jpekkila
|
022e46f2e7
|
Merge branch 'master' into dsl_parameter_overhaul_2019-08-19
|
2019-08-23 13:13:57 +03:00 |
|
jpekkila
|
f6040f89dc
|
Added acPrintMeshInfo for printing all mesh parameters
|
2019-08-21 16:24:48 +03:00 |
|
jpekkila
|
d52e002e5d
|
Made Astaroth Standalone a library component (still works as before but can be included in other projects which need f.ex. autotesting)
|
2019-08-21 16:18:48 +03:00 |
|
jpekkila
|
5867ff4b3e
|
Stashing MPItest changes
|
2019-08-21 16:16:12 +03:00 |
|
jpekkila
|
39dcda4a04
|
Made warnings about unused functions go away (this is intended functionality and not all programs will use all types of device constants, thus unnecessary warning)
|
2019-08-21 14:28:46 +03:00 |
|
jpekkila
|
5d2b658fb0
|
Autoformatted the DSL files
|
2019-08-20 18:41:26 +03:00 |
|
jpekkila
|
73d393e419
|
Changed order for linking the MPI library to work around cmake error on CMP0004
|
2019-08-20 18:40:38 +03:00 |
|
jpekkila
|
5b7408eb55
|
User config param overhaul complete, works. If I haven't missed anything, all fields and user parameters, and everything related to simulation can now be declared with the DSL. The only thing that you need to do is to fill the declared symbols with data, like with OpenGL and GLSL.
|
2019-08-19 18:43:16 +03:00 |
|
jpekkila
|
51cf1f1068
|
The C header is now generated from the DSL, stashing the changes just to be sure since I might overwrite something when updating the compilation scripts to work with this new scheme
|
2019-08-19 18:19:28 +03:00 |
|
jpekkila
|
d801ebdd41
|
Now parameters and vertexbuffers (fields) can be declared with the DSL only. TODO: translation from the DSL header to C
|
2019-08-19 17:35:03 +03:00 |
|
jpekkila
|
bcdd827a4f
|
Added a proper declarations for all user-specified uniform. Note: built-in uniforms are not correctly translated into CUDA
|
2019-08-19 17:05:56 +03:00 |
|
jpekkila
|
0208d55e4e
|
Moved STENCIL_ORDER and NGHOST out of user-defined parameter as these are actually internal defines used to configure the built-in functions. Additionally, renamed all explicitly declared uniforms from dsx -> AC_dsx in the DSL in preparation for having clear connection between DSL uniforms and the library parameter handles created by the user (AcRealParam etc)
|
2019-08-19 16:40:47 +03:00 |
|
jpekkila
|
c98b74563c
|
Added a comment
|
2019-08-19 16:18:24 +03:00 |
|
jpekkila
|
b316e51267
|
Added preliminary code for generating C headers with the DSL
|
2019-08-19 16:16:26 +03:00 |
|
jpekkila
|
787363226b
|
Added functions for loading int, int3, scalar and vector constants to the device layer (acDeviceLoad...Constant)
|
2019-08-19 15:28:16 +03:00 |
|
jpekkila
|
41805dcb68
|
Added some error checking for the case where user supplies an incomplete meshinfo to acDeviceLoadMeshInfo
|
2019-08-19 15:17:51 +03:00 |
|
jpekkila
|
598799d7c3
|
Added a new function to the device interface: acDeviceLoadMeshInfo
|
2019-08-19 15:14:00 +03:00 |
|
jpekkila
|
e89897985e
|
Battled with math.h and cmath. We probably should move from C standard libraries to C++ ones internally (in places which are not visible via the interface)
|
2019-08-19 14:02:30 +03:00 |
|
jpekkila
|
6d4d53342e
|
Removed old comments
|
2019-08-15 11:14:52 +03:00 |
|
jpekkila
|
aa45ce04de
|
Made the linear algebra functions used in forcing.cc static to avoid collisions with the functions defined in math_utils.h
|
2019-08-15 11:09:40 +03:00 |
|
jpekkila
|
36fea70560
|
Moved basic built-in functions for vector operations to math_utils.h from integration.cuh so that they are shared with the CPU and GPU
|
2019-08-15 11:04:22 +03:00 |
|
jpekkila
|
d5b2e5bb42
|
Added placeholders for new built-in variables in the DSL. Also overloads to DCONST_INT etc. Naming still pending and old DCONST_REAL etc calls still work.
|
2019-08-12 14:05:35 +03:00 |
|
jpekkila
|
b8c4d07de2
|
Removed unnecessary comments
|
2019-08-12 13:31:24 +03:00 |
|
jpekkila
|
e027f7e548
|
Removed grid_n in astaroth.cu and replaced it with the new acNodeQueryDeviceConfiguration call
|
2019-08-12 13:25:47 +03:00 |
|
jpekkila
|
3369d8efec
|
Added a missing include
|
2019-08-12 11:44:27 +03:00 |
|
jpekkila
|
bba9ec7c3b
|
Implemented acNodeQueryDeviceConfiguration
|
2019-08-12 11:40:38 +03:00 |
|
jpekkila
|
b5daf22c26
|
Added interface function acSynchronizeMesh
|
2019-08-12 10:25:05 +03:00 |
|
jpekkila
|
8bbb2cd5df
|
Now prints device info before trying to run the dummy kernel
|
2019-08-12 09:46:37 +03:00 |
|
jpekkila
|
fdadd463b7
|
Included the user-defined header after the definition of AcReal to make it available if needed.
|
2019-08-09 17:11:21 +03:00 |
|
jpekkila
|
bc0276ba2d
|
Merged in dsl_syntax_revision_08008 (pull request #5)
Dsl syntax revision 08008
Approved-by: Miikka Väisälä <mvaisala@asiaa.sinica.edu.tw>
|
2019-08-09 05:16:37 +00:00 |
|
jpekkila
|
a7a7b535d6
|
The code generator now generates more efficient CUDA: built-in parameters are passed as const references without copying
|
2019-08-08 21:35:07 +03:00 |
|
jpekkila
|
a172abeb1f
|
Modified the other sps files to use the new syntax. Though does not compile since there are some old/very old changes in the DSL that have not been updated to these files (f.ex. RK macro does not exist anymore, it's currently rk3)
|
2019-08-08 21:25:45 +03:00 |
|
jpekkila
|
67358fa75f
|
Removed acc/samples as unmaintained
|
2019-08-08 21:22:34 +03:00 |
|
jpekkila
|
b53cabbc44
|
Made the DSL syntax less confusing: Input and output arrays are now ScalarField and VectorFields instead of scalars and vectors. C++ initializers are now also possible, removing the need to declare Fields as int or int3 which was very confusing, like "what, you assing an int value to a real, what the &^%@?"
|
2019-08-08 21:07:36 +03:00 |
|
jpekkila
|
5397495496
|
Added acLoadWithOffset
|
2019-08-08 20:43:01 +03:00 |
|
jpekkila
|
e79e1207f2
|
Added a function for checking whether CUDA-capable devices are available
|
2019-08-08 20:35:02 +03:00 |
|
jpekkila
|
8a9099d75e
|
Added missing functions to fix backwards compatibility with the version interfaced with Pencil Code
|
2019-08-08 19:49:57 +03:00 |
|
jpekkila
|
168cdc9109
|
Fixed a float/long double conversion that some complainers... um compilers complain about
|
2019-08-08 18:12:24 +03:00 |
|
jpekkila
|
af24f17d1f
|
Merged in node_device_interface_revision_07-23 (pull request #4)
Node device interface revision 07 23
|
2019-08-08 02:52:31 +00:00 |
|
jpekkila
|
322cdce52c
|
Added some new comments + some helpful old comments from a time before the interface revision
|
2019-08-07 20:05:54 +03:00 |
|
jpekkila
|
2b3f9d75af
|
Ensured that acBoundcondStep is called everywhere in the program before acStore
|
2019-08-07 19:20:40 +03:00 |
|
jpekkila
|
d8eb2723b4
|
Added an acBoundconds() call before acStore in autotest.cc
|
2019-08-07 19:10:04 +03:00 |
|
jpekkila
|
1525e0603f
|
Added some preliminary pragma omps and verified that acIntegrate works as it should.
|
2019-08-07 19:08:52 +03:00 |
|
jpekkila
|
c2bd5ae3e6
|
Simplified the optimized multi-GPU integration function
|
2019-08-07 18:17:03 +03:00 |
|
jpekkila
|
fd94b6321d
|
Renamed globalGrid.n to globalGridN
|
2019-08-07 18:16:34 +03:00 |
|
jpekkila
|
10200e4dd5
|
Merge branch 'master' into node_device_interface_revision_07-23
|
2019-08-07 16:25:33 +03:00 |
|
jpekkila
|
5432d20b1b
|
Removed a depreceated auto-optimization script. The optimization is done during acInit() at runtime instead
|
2019-08-07 16:25:03 +03:00 |
|
jpekkila
|
c38218da3b
|
SRUN_COMMAND has to be exported for it to be available in autotest.sh
|
2019-08-07 16:22:55 +03:00 |
|
jpekkila
|
e2f5cced1e
|
Renamed dox -> dot
|
2019-08-07 16:08:03 +03:00 |
|
Miikka Väisälä
|
4ae92587a3
|
Merged in bugfix/upwind_autotest_20190807 (pull request #3)
Bugfix/upwind autotest 20190807
Approved-by: jpekkila <johannes.pekkila@protonmail.com>
|
2019-08-07 12:58:22 +00:00 |
|