mirror of
https://github.com/cp2k/cp2k.git
synced 2026-07-28 22:25:32 -04:00
Various small fixes to libtorch support
This commit is contained in:
parent
b3a0e82e75
commit
a85683755d
8 changed files with 141 additions and 108 deletions
|
|
@ -21,6 +21,10 @@ PROGRAM nequip_unittest
|
|||
|
||||
IMPLICIT NONE
|
||||
|
||||
#if !defined(__LIBTORCH)
|
||||
WRITE (*, *) "CP2K compiled without the Torch library - skipping NequIP unittest."
|
||||
|
||||
#else
|
||||
CHARACTER(LEN=default_path_length) :: filename, cutoff_str, nequip_version
|
||||
REAL(dp) :: cutoff
|
||||
|
||||
|
|
@ -42,103 +46,103 @@ PROGRAM nequip_unittest
|
|||
NULLIFY (total_energy, atomic_energy, forces)
|
||||
|
||||
! A box with 32 water molecules.
|
||||
pos = RESHAPE([ &
|
||||
42.886169670000001, -0.055681660000000001, 38.329161120000002, &
|
||||
34.202588720000001, -0.6185484, 37.365568080000003, &
|
||||
30.080392589999999, -2.0124176500000002, 36.480796079999998, &
|
||||
28.705791179999999, -2.6880392799999999, 36.602098329999997, &
|
||||
36.24794267, -0.51634849000000005, 34.492359610000001, &
|
||||
37.696472460000003, -0.041087279999999997, 35.014073510000003, &
|
||||
27.760669979999999, 7.4854206000000003, 33.927691950000003, &
|
||||
28.816099959999999, 6.49857774, 34.21636084, &
|
||||
37.157637200000003, 9.0188280800000005, 31.926581209999998, &
|
||||
38.606381650000003, 9.5820079600000003, 32.343597279999997, &
|
||||
34.303195930000001, 2.2195014400000002, 45.988045190000001, &
|
||||
33.244413940000001, 1.30253325, 46.469842720000003, &
|
||||
38.728617479999997, -5.0541897699999998, 26.074396839999999, &
|
||||
38.348392150000002, -6.2832846900000003, 26.986725310000001, &
|
||||
32.864252090000001, 3.20606327, 30.897116, &
|
||||
31.290408809999999, 3.0871834699999998, 30.62739775, &
|
||||
33.751986969999997, -3.13832624, 39.672760769999996, &
|
||||
34.664297990000001, -3.66438591, 38.646602719999997, &
|
||||
42.717321439999999, 5.1246883700000003, 32.588340119999998, &
|
||||
41.56274552, 5.5893544000000004, 33.417490280000003, &
|
||||
32.428380089999997, 9.1182520999999994, 30.54776786, &
|
||||
32.6432407, 10.77068308, 30.48427787, &
|
||||
31.484867080000001, 4.6777144699999997, 37.395719499999998, &
|
||||
32.317188299999998, -6.2287496200000003, 36.467186439999999, &
|
||||
26.662134099999999, 3.1708123800000001, 35.682014649999999, &
|
||||
26.52713675, 1.60390403, 35.488348299999998, &
|
||||
32.023823659999998, 16.918208029999999, 31.688356989999999, &
|
||||
31.400657970000001, 7.0315610800000004, 30.239455469999999, &
|
||||
33.52642531, -3.5594808100000002, 34.26368308, &
|
||||
34.640485550000001, -3.26538336, 35.497148240000001, &
|
||||
40.056437510000002, -0.30543864999999998, 29.831207429999999, &
|
||||
39.478446419999997, -1.09483146, 38.310114040000002, &
|
||||
39.704076149999999, 1.9584631400000001, 33.390237599999999, &
|
||||
38.333857080000001, 2.69671781, 42.92619457, &
|
||||
40.182045549999998, -7.2199289499999999, 27.658039049999999, &
|
||||
39.320443179999998, -8.4564252700000004, 28.13196589, &
|
||||
36.38769637, 8.8117085900000003, 38.354536240000002, &
|
||||
36.320563759999999, 9.0063075799999996, 36.752600139999998, &
|
||||
29.999158309999999, -5.5637817500000004, 33.929505059999997, &
|
||||
30.772854550000002, -5.0385870199999996, 35.199806719999998, &
|
||||
40.059251779999997, 6.3305279499999996, 28.257946189999998, &
|
||||
40.239836089999997, 5.1745923999999999, 29.29629568, &
|
||||
26.33209111, 2.4393638599999998, 33.565386850000003, &
|
||||
26.960697119999999, 1.2711078899999999, 32.592388440000001, &
|
||||
34.837269769999999, -0.47227084000000003, 30.382436200000001, &
|
||||
35.396881370000003, -1.92684834, 30.308183759999999, &
|
||||
32.121760719999997, -0.73334299000000003, 36.510438299999997, &
|
||||
32.218084349999998, 7.8454304099999996, 35.667196779999998, &
|
||||
36.37809987, -4.3048878799999999, 36.4539793, &
|
||||
35.811927560000001, -3.00139282, 27.034893759999999, &
|
||||
29.645249140000001, 1.0652123600000001, 35.714365399999998, &
|
||||
30.379465499999998, -0.066814650000000003, 34.988246869999998, &
|
||||
34.21493366, -1.65591205, 33.887643709999999, &
|
||||
34.784243549999999, -1.0252141100000001, 32.503483260000003, &
|
||||
40.464995450000004, 1.14678254, 31.307350320000001, &
|
||||
41.326246990000001, 0.65508034999999998, 32.455588290000001, &
|
||||
29.02108599, 3.5038194900000001, 39.90877029, &
|
||||
29.494542689999999, 3.7276637300000002, 41.376613800000001, &
|
||||
34.135966400000001, -6.7533422300000003, 32.356841029999998, &
|
||||
34.954657009999998, -5.7704242399999996, 31.45710669, &
|
||||
33.253235689999997, 1.5268048299999999, 44.056217189999998, &
|
||||
33.793166939999999, 0.50146325999999997, 43.059759010000001, &
|
||||
36.820540960000002, 2.6214681999999998, 40.683400659999997, &
|
||||
37.555270669999999, 1.56498329, 39.76489351, &
|
||||
43.209908720000001, -0.062845650000000003, 47.25931559, &
|
||||
29.394058350000002, -2.3133019500000001, 37.140788360000002, &
|
||||
36.741570840000001, -0.083871000000000001, 35.259178339999998, &
|
||||
27.94247769, 6.7622961500000001, 34.564838440000003, &
|
||||
37.681265600000003, 9.4216399800000001, 32.647864349999999, &
|
||||
33.317129080000001, 2.0951401700000001, 45.872226509999997, &
|
||||
37.995135589999997, 4.3611431200000004, 26.55718199, &
|
||||
32.182467090000003, 2.6611503399999998, 30.457724819999999, &
|
||||
34.653801209999997, -3.4374573100000001, 39.588924570000003, &
|
||||
42.292983370000002, 5.9471069500000002, 32.846099549999998, &
|
||||
32.960469009999997, 9.9050313200000009, 30.158730670000001, &
|
||||
31.42818866, -5.8338304000000001, 36.673874359999999, &
|
||||
26.05637308, 2.4973869199999998, 35.348687040000002, &
|
||||
32.033492709999997, 17.325228939999999, 30.811601379999999, &
|
||||
33.825218239999998, -2.9520949600000002, 35.022046070000002, &
|
||||
39.456998159999998, -0.30727594000000003, 38.934782900000002, &
|
||||
29.48467089, 2.8692561099999998, 43.006186839999998, &
|
||||
39.286418410000003, -7.62061031, 27.627114779999999, &
|
||||
35.879750280000003, 8.6515870800000005, 37.522173430000002, &
|
||||
30.358254389999999, -4.7607656800000004, 34.335564570000003, &
|
||||
40.709895690000003, 5.8331250199999998, 28.755837589999999, &
|
||||
26.717908300000001, 2.2415138300000002, 32.657729799999998, &
|
||||
35.658925619999998, -0.99689035000000004, 30.574953059999999, &
|
||||
31.585160200000001, -1.31218042, 35.901110940000002, &
|
||||
35.548938669999998, -3.9056138900000001, 26.821449000000001, &
|
||||
29.565661609999999, 0.46817945999999999, 34.967071199999999, &
|
||||
34.76151282, -0.95696802000000003, 33.489136729999998, &
|
||||
40.485340669999999, 0.40236209000000001, 31.94254162, &
|
||||
29.672828979999998, 4.0134825300000001, 40.450578, &
|
||||
34.127228619999997, -5.8796882899999998, 31.892542299999999, &
|
||||
33.116888420000002, 1.2338084899999999, 43.112771199999997, &
|
||||
37.199699350000003, 2.5049007099999998, 39.791712660000002], shape=[3, natoms])
|
||||
pos = RESHAPE(REAL([ &
|
||||
42.8861696_dp, -0.0556816_dp, 38.3291611_dp, &
|
||||
34.2025887_dp, -0.6185484_dp, 37.3655680_dp, &
|
||||
30.0803925_dp, -2.0124176_dp, 36.4807960_dp, &
|
||||
28.7057911_dp, -2.6880392_dp, 36.6020983_dp, &
|
||||
36.2479426_dp, -0.5163484_dp, 34.4923596_dp, &
|
||||
37.6964724_dp, -0.0410872_dp, 35.0140735_dp, &
|
||||
27.7606699_dp, 7.4854206_dp, 33.9276919_dp, &
|
||||
28.8160999_dp, 6.4985777_dp, 34.2163608_dp, &
|
||||
37.1576372_dp, 9.0188280_dp, 31.9265812_dp, &
|
||||
38.6063816_dp, 9.5820079_dp, 32.3435972_dp, &
|
||||
34.3031959_dp, 2.2195014_dp, 45.9880451_dp, &
|
||||
33.2444139_dp, 1.3025332_dp, 46.4698427_dp, &
|
||||
38.7286174_dp, -5.0541897_dp, 26.0743968_dp, &
|
||||
38.3483921_dp, -6.2832846_dp, 26.9867253_dp, &
|
||||
32.8642520_dp, 3.2060632_dp, 30.8971160_dp, &
|
||||
31.2904088_dp, 3.0871834_dp, 30.6273977_dp, &
|
||||
33.7519869_dp, -3.1383262_dp, 39.6727607_dp, &
|
||||
34.6642979_dp, -3.6643859_dp, 38.6466027_dp, &
|
||||
42.7173214_dp, 5.1246883_dp, 32.5883401_dp, &
|
||||
41.5627455_dp, 5.5893544_dp, 33.4174902_dp, &
|
||||
32.4283800_dp, 9.1182520_dp, 30.5477678_dp, &
|
||||
32.6432407_dp, 10.770683_dp, 30.4842778_dp, &
|
||||
31.4848670_dp, 4.6777144_dp, 37.3957194_dp, &
|
||||
32.3171882_dp, -6.2287496_dp, 36.4671864_dp, &
|
||||
26.6621340_dp, 3.1708123_dp, 35.6820146_dp, &
|
||||
26.5271367_dp, 1.6039040_dp, 35.4883482_dp, &
|
||||
32.0238236_dp, 16.918208_dp, 31.6883569_dp, &
|
||||
31.4006579_dp, 7.0315610_dp, 30.2394554_dp, &
|
||||
33.5264253_dp, -3.5594808_dp, 34.2636830_dp, &
|
||||
34.6404855_dp, -3.2653833_dp, 35.4971482_dp, &
|
||||
40.0564375_dp, -0.3054386_dp, 29.8312074_dp, &
|
||||
39.4784464_dp, -1.0948314_dp, 38.3101140_dp, &
|
||||
39.7040761_dp, 1.9584631_dp, 33.3902375_dp, &
|
||||
38.3338570_dp, 2.6967178_dp, 42.9261945_dp, &
|
||||
40.1820455_dp, -7.2199289_dp, 27.6580390_dp, &
|
||||
39.3204431_dp, -8.4564252_dp, 28.1319658_dp, &
|
||||
36.3876963_dp, 8.8117085_dp, 38.3545362_dp, &
|
||||
36.3205637_dp, 9.0063075_dp, 36.7526001_dp, &
|
||||
29.9991583_dp, -5.5637817_dp, 33.9295050_dp, &
|
||||
30.7728545_dp, -5.0385870_dp, 35.1998067_dp, &
|
||||
40.0592517_dp, 6.3305279_dp, 28.2579461_dp, &
|
||||
40.2398360_dp, 5.1745923_dp, 29.2962956_dp, &
|
||||
26.3320911_dp, 2.4393638_dp, 33.5653868_dp, &
|
||||
26.9606971_dp, 1.2711078_dp, 32.5923884_dp, &
|
||||
34.8372697_dp, -0.4722708_dp, 30.3824362_dp, &
|
||||
35.3968813_dp, -1.9268483_dp, 30.3081837_dp, &
|
||||
32.1217607_dp, -0.7333429_dp, 36.5104382_dp, &
|
||||
32.2180843_dp, 7.8454304_dp, 35.6671967_dp, &
|
||||
36.3780998_dp, -4.3048878_dp, 36.4539793_dp, &
|
||||
35.8119275_dp, -3.0013928_dp, 27.0348937_dp, &
|
||||
29.6452491_dp, 1.0652123_dp, 35.7143653_dp, &
|
||||
30.3794654_dp, -0.0668146_dp, 34.9882468_dp, &
|
||||
34.2149336_dp, -1.6559120_dp, 33.8876437_dp, &
|
||||
34.7842435_dp, -1.0252141_dp, 32.5034832_dp, &
|
||||
40.4649954_dp, 1.1467825_dp, 31.3073503_dp, &
|
||||
41.3262469_dp, 0.6550803_dp, 32.4555882_dp, &
|
||||
29.0210859_dp, 3.5038194_dp, 39.9087702_dp, &
|
||||
29.4945426_dp, 3.7276637_dp, 41.3766138_dp, &
|
||||
34.1359664_dp, -6.7533422_dp, 32.3568410_dp, &
|
||||
34.9546570_dp, -5.7704242_dp, 31.4571066_dp, &
|
||||
33.2532356_dp, 1.5268048_dp, 44.0562171_dp, &
|
||||
33.7931669_dp, 0.5014632_dp, 43.0597590_dp, &
|
||||
36.8205409_dp, 2.6214681_dp, 40.6834006_dp, &
|
||||
37.5552706_dp, 1.5649832_dp, 39.7648935_dp, &
|
||||
43.2099087_dp, -0.0628456_dp, 47.2593155_dp, &
|
||||
29.3940583_dp, -2.3133019_dp, 37.1407883_dp, &
|
||||
36.7415708_dp, -0.0838710_dp, 35.2591783_dp, &
|
||||
27.9424776_dp, 6.7622961_dp, 34.5648384_dp, &
|
||||
37.6812656_dp, 9.4216399_dp, 32.6478643_dp, &
|
||||
33.3171290_dp, 2.0951401_dp, 45.8722265_dp, &
|
||||
37.9951355_dp, 4.3611431_dp, 26.5571819_dp, &
|
||||
32.1824670_dp, 2.6611503_dp, 30.4577248_dp, &
|
||||
34.6538012_dp, -3.4374573_dp, 39.5889245_dp, &
|
||||
42.2929833_dp, 5.9471069_dp, 32.8460995_dp, &
|
||||
32.9604690_dp, 9.9050313_dp, 30.1587306_dp, &
|
||||
31.4281886_dp, -5.8338304_dp, 36.6738743_dp, &
|
||||
26.0563730_dp, 2.4973869_dp, 35.3486870_dp, &
|
||||
32.0334927_dp, 17.3252289_dp, 30.8116013_dp, &
|
||||
33.8252182_dp, -2.9520949_dp, 35.0220460_dp, &
|
||||
39.4569981_dp, -0.3072759_dp, 38.9347829_dp, &
|
||||
29.4846708_dp, 2.8692561_dp, 43.0061868_dp, &
|
||||
39.2864184_dp, -7.6206103_dp, 27.6271147_dp, &
|
||||
35.8797502_dp, 8.6515870_dp, 37.5221734_dp, &
|
||||
30.3582543_dp, -4.7607656_dp, 34.3355645_dp, &
|
||||
40.7098956_dp, 5.8331250_dp, 28.7558375_dp, &
|
||||
26.7179083_dp, 2.2415138_dp, 32.6577297_dp, &
|
||||
35.6589256_dp, -0.9968903_dp, 30.5749530_dp, &
|
||||
31.5851602_dp, -1.3121804_dp, 35.9011109_dp, &
|
||||
35.5489386_dp, -3.9056138_dp, 26.8214490_dp, &
|
||||
29.5656616_dp, 0.4681794_dp, 34.9670711_dp, &
|
||||
34.7615128_dp, -0.9569680_dp, 33.4891367_dp, &
|
||||
40.4853406_dp, 0.4023620_dp, 31.9425416_dp, &
|
||||
29.6728289_dp, 4.0134825_dp, 40.4505780_dp, &
|
||||
34.1272286_dp, -5.8796882_dp, 31.8925999_dp, &
|
||||
33.1168884_dp, 1.2338084_dp, 43.1127997_dp, &
|
||||
37.1996993_dp, 2.5049007_dp, 39.7917126_dp], kind=sp), shape=[3, natoms])
|
||||
|
||||
cell(1, :) = [9.85_dp, 0.0_dp, 0.0_dp]
|
||||
cell(2, :) = [0.0_dp, 9.85_dp, 0.0_dp]
|
||||
|
|
@ -149,7 +153,6 @@ PROGRAM nequip_unittest
|
|||
atom_types(:64) = 0 ! Hydrogen
|
||||
atom_types(65:) = 1 ! Oxygen
|
||||
|
||||
#if defined(__LIBTORCH)
|
||||
filename = discover_file('NequIP/water.pth')
|
||||
WRITE (*, *) "Loading NequIP model from: "//TRIM(filename)
|
||||
CALL torch_model_load(model, filename)
|
||||
|
|
@ -179,7 +182,7 @@ PROGRAM nequip_unittest
|
|||
CALL torch_dict_get(outputs, "atomic_energy", atomic_energy)
|
||||
CALL torch_dict_get(outputs, "forces", forces)
|
||||
WRITE (*, *) "Total Energy: ", total_energy(1, 1)
|
||||
CPASSERT(ABS(-14985.61621 - total_energy(1, 1)) < 1e-3)
|
||||
CPASSERT(ABS(-14985.61621_dp - REAL(total_energy(1, 1), kind=dp)) < 1e-3_dp)
|
||||
|
||||
CALL torch_dict_release(inputs)
|
||||
CALL torch_dict_release(outputs)
|
||||
|
|
@ -187,9 +190,6 @@ PROGRAM nequip_unittest
|
|||
DEALLOCATE (edge_index, edge_cell_shift, total_energy, atomic_energy, forces)
|
||||
|
||||
WRITE (*, *) "NequIP unittest was successfully :-)"
|
||||
#else
|
||||
WRITE (*, *) "CP2K compiled without the Torch library - skipping NequIP unittest."
|
||||
#endif
|
||||
|
||||
CONTAINS
|
||||
|
||||
|
|
@ -230,4 +230,6 @@ CONTAINS
|
|||
END DO
|
||||
END SUBROUTINE neighbor_search
|
||||
|
||||
#endif
|
||||
|
||||
END PROGRAM nequip_unittest
|
||||
|
|
|
|||
|
|
@ -99,6 +99,9 @@ CONTAINS
|
|||
source=source)
|
||||
#else
|
||||
CPABORT("CP2K compiled without the Torch library.")
|
||||
MARK_USED(dict)
|
||||
MARK_USED(key)
|
||||
MARK_USED(source)
|
||||
#endif
|
||||
END SUBROUTINE torch_dict_insert_${typename}$_${ndims}$d
|
||||
|
||||
|
|
@ -147,6 +150,9 @@ CONTAINS
|
|||
CALL C_F_POINTER(dest_c, dest, shape=sizes_f)
|
||||
#else
|
||||
CPABORT("CP2K compiled without the Torch library.")
|
||||
MARK_USED(dict)
|
||||
MARK_USED(key)
|
||||
MARK_USED(dest)
|
||||
#endif
|
||||
END SUBROUTINE torch_dict_get_${typename}$_${ndims}$d
|
||||
|
||||
|
|
@ -173,6 +179,7 @@ CONTAINS
|
|||
CPASSERT(C_ASSOCIATED(dict%c_ptr))
|
||||
#else
|
||||
CPABORT("CP2K was compiled without Torch library.")
|
||||
MARK_USED(dict)
|
||||
#endif
|
||||
END SUBROUTINE torch_dict_create
|
||||
|
||||
|
|
@ -196,6 +203,7 @@ CONTAINS
|
|||
dict%c_ptr = C_NULL_PTR
|
||||
#else
|
||||
CPABORT("CP2K was compiled without Torch library.")
|
||||
MARK_USED(dict)
|
||||
#endif
|
||||
END SUBROUTINE torch_dict_release
|
||||
|
||||
|
|
@ -221,6 +229,8 @@ CONTAINS
|
|||
CPASSERT(C_ASSOCIATED(model%c_ptr))
|
||||
#else
|
||||
CPABORT("CP2K was compiled without Torch library.")
|
||||
MARK_USED(model)
|
||||
MARK_USED(filename)
|
||||
#endif
|
||||
END SUBROUTINE torch_model_load
|
||||
|
||||
|
|
@ -251,6 +261,9 @@ CONTAINS
|
|||
outputs=outputs%c_ptr)
|
||||
#else
|
||||
CPABORT("CP2K was compiled without Torch library.")
|
||||
MARK_USED(model)
|
||||
MARK_USED(inputs)
|
||||
MARK_USED(outputs)
|
||||
#endif
|
||||
END SUBROUTINE torch_model_eval
|
||||
|
||||
|
|
@ -274,6 +287,7 @@ CONTAINS
|
|||
model%c_ptr = C_NULL_PTR
|
||||
#else
|
||||
CPABORT("CP2K was compiled without Torch library.")
|
||||
MARK_USED(model)
|
||||
#endif
|
||||
END SUBROUTINE torch_model_release
|
||||
|
||||
|
|
@ -323,6 +337,9 @@ CONTAINS
|
|||
DEALLOCATE (content_f) ! Was allocated on the C side.
|
||||
#else
|
||||
CPABORT("CP2K was compiled without Torch library.")
|
||||
MARK_USED(filename)
|
||||
MARK_USED(key)
|
||||
MARK_USED(res)
|
||||
#endif
|
||||
END FUNCTION torch_model_read_metadata
|
||||
|
||||
|
|
|
|||
|
|
@ -123,6 +123,7 @@ message_passing.fypp: Rank mismatch between actual argument at (1) and actual ar
|
|||
message_passing.fypp: Type mismatch between actual argument at (1) and actual argument at (2) (COMPLEX(8)/COMPLEX(4)).
|
||||
mltfftsg_tools.F: Found WRITE statement with hardcoded unit in "ctrig"
|
||||
mode_selective.F: Found READ with unchecked STAT in "bfgs_guess"
|
||||
nequip_unittest.F: Found WRITE statement with hardcoded unit in "nequip_unittest"
|
||||
pao_param_exp.F: Found lossy conversion real_4_r8 without KIND argument in "zheevd_wrapper"
|
||||
parallel_gemm_api.F: Found CALL cp_fm_gemm in procedure "parallel_gemm_fm"
|
||||
parallel_rng_types_unittest.F: Found WRITE statement with hardcoded unit in "dump_reload_check"
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ RUN ./install_cp2k_toolchain.sh \
|
|||
--install-all \
|
||||
--with-gcc=system \
|
||||
--with-libxsmm=no \
|
||||
--with-libtorch=no \
|
||||
--dry-run
|
||||
|
||||
# Dry-run leaves behind config files for the followup install scripts.
|
||||
|
|
|
|||
|
|
@ -62,7 +62,13 @@ def main() -> None:
|
|||
f.write(regtest("ssmp"))
|
||||
|
||||
with OutputFile("Dockerfile.test_arm64-psmp", args.check) as f:
|
||||
f.write(toolchain_full(base_image="arm64v8/ubuntu:22.04", with_libxsmm="no"))
|
||||
f.write(
|
||||
toolchain_full(
|
||||
base_image="arm64v8/ubuntu:22.04",
|
||||
with_libxsmm="no",
|
||||
with_libtorch="no",
|
||||
)
|
||||
)
|
||||
f.write(regtest("psmp"))
|
||||
|
||||
with OutputFile(f"Dockerfile.test_performance", args.check) as f:
|
||||
|
|
|
|||
|
|
@ -218,6 +218,8 @@ The --with-PKG options follow the rules:
|
|||
Default = install
|
||||
--with-libvori Enable libvori for the Voronoi integration (and the BQB compressed trajectory format)
|
||||
Default = install
|
||||
--with-libtorch Enable libtorch the machine learning framework needed for NequIP.
|
||||
Default = no
|
||||
|
||||
FURTHER INSTRUCTIONS
|
||||
|
||||
|
|
@ -255,7 +257,7 @@ mpi_list="mpich openmpi intelmpi"
|
|||
math_list="mkl acml openblas"
|
||||
lib_list="fftw libint libxc libxsmm cosma scalapack elpa plumed \
|
||||
spfft spla ptscotch superlu pexsi quip gsl spglib hdf5 libvdwxc sirius
|
||||
libvori"
|
||||
libvori libtorch"
|
||||
package_list="${tool_list} ${mpi_list} ${math_list} ${lib_list}"
|
||||
# ------------------------------------------------------------------------
|
||||
|
||||
|
|
@ -301,6 +303,7 @@ with_spfft="__DONTUSE__"
|
|||
with_spla="__DONTUSE__"
|
||||
with_cosma="__INSTALL__"
|
||||
with_libvori="__INSTALL__"
|
||||
with_libtorch="__DONTUSE__"
|
||||
# for MPI, we try to detect system MPI variant
|
||||
if (command -v mpirun > /dev/null 2>&1); then
|
||||
# check if we are dealing with openmpi, mpich or intelmpi
|
||||
|
|
@ -605,6 +608,9 @@ while [ $# -ge 1 ]; do
|
|||
--with-libvori*)
|
||||
with_libvori=$(read_with "${1}")
|
||||
;;
|
||||
--with-libtorch*)
|
||||
with_libtorch=$(read_with "${1}")
|
||||
;;
|
||||
--with-spla*)
|
||||
with_spla=$(read_with "${1}")
|
||||
;;
|
||||
|
|
|
|||
|
|
@ -177,7 +177,7 @@ if [ "${ENABLE_HIP}" = __TRUE__ ] && [ "${GPUVER}" != no ]; then
|
|||
HIP_FLAGS+="-fPIE -D__HIP_PLATFORM_AMD__ -g --offload-arch=gfx906 -O3 --std=c++11 -Wall -Wextra -Werror \$(DFLAGS)"
|
||||
LIBS+=" IF_HIP(-lamdhip64 -lhipfft -lhipblas -lrocblas IF_DEBUG(-lroctx64 -lroctracer64|)|)"
|
||||
DFLAGS+=" IF_HIP(-D__HIP_PLATFORM_AMD__ -D__OFFLOAD_HIP IF_DEBUG(-D__OFFLOAD_PROFILING|)|) -D__DBCSR_ACC"
|
||||
CXXFLAGS+=" -fopenmp -std=c++11 -Wall -Wextra -Werror"
|
||||
CXXFLAGS+=" -fopenmp -Wall -Wextra -Werror"
|
||||
;;
|
||||
Mi100)
|
||||
check_lib -lamdhip64 "hip"
|
||||
|
|
@ -193,7 +193,7 @@ if [ "${ENABLE_HIP}" = __TRUE__ ] && [ "${GPUVER}" != no ]; then
|
|||
HIP_FLAGS+="-fPIE -D__HIP_PLATFORM_AMD__ -g --offload-arch=gfx908 -O3 --std=c++11 -Wall -Wextra -Werror \$(DFLAGS)"
|
||||
LIBS+=" IF_HIP(-lamdhip64 -lhipfft -lhipblas -lrocblas IF_DEBUG(-lroctx64 -lroctracer64|)|)"
|
||||
DFLAGS+=" IF_HIP(-D__HIP_PLATFORM_AMD__ -D__OFFLOAD_HIP IF_DEBUG(-D__OFFLOAD_PROFILING|)|) -D__DBCSR_ACC"
|
||||
CXXFLAGS+=" -fopenmp -std=c++11 -Wall -Wextra -Werror"
|
||||
CXXFLAGS+=" -fopenmp -Wall -Wextra -Werror"
|
||||
;;
|
||||
Mi250)
|
||||
check_lib -lamdhip64 "hip"
|
||||
|
|
@ -209,7 +209,7 @@ if [ "${ENABLE_HIP}" = __TRUE__ ] && [ "${GPUVER}" != no ]; then
|
|||
HIP_FLAGS+="-fPIE -D__HIP_PLATFORM_AMD__ -g --offload-arch=gfx90a -O3 --std=c++11 -Wall -Wextra -Werror \$(DFLAGS)"
|
||||
LIBS+=" IF_HIP(-lamdhip64 -lhipfft -lhipblas -lrocblas IF_DEBUG(-lroctx64 -lroctracer64|)|)"
|
||||
DFLAGS+=" IF_HIP(-D__HIP_PLATFORM_AMD__ -D__OFFLOAD_HIP IF_DEBUG(-D__OFFLOAD_PROFILING|)|) -D__DBCSR_ACC"
|
||||
CXXFLAGS+=" -fopenmp -std=c++11 -Wall -Wextra -Werror"
|
||||
CXXFLAGS+=" -fopenmp -Wall -Wextra -Werror"
|
||||
;;
|
||||
*)
|
||||
check_command nvcc "cuda"
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ source "${INSTALLDIR}"/toolchain.env
|
|||
! [ -d "${BUILDDIR}" ] && mkdir -p "${BUILDDIR}"
|
||||
cd "${BUILDDIR}"
|
||||
|
||||
case "${with_libtorch:=__INSTALL__}" in
|
||||
case "${with_libtorch}" in
|
||||
__INSTALL__)
|
||||
echo "==================== Installing libtorch ===================="
|
||||
pkg_install_dir="${INSTALLDIR}/libtorch-${libtorch_ver}"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue