Andrzej Janik
c461cefd7d
Rebindgen to emit send,sync,hash
2024-11-25 04:08:31 +00:00
Andrzej Janik
9f677e23c0
Add basic cuModule*, add handful of missing stuff
2024-11-22 18:57:19 +01:00
Andrzej Janik
3ec7bffdc5
Automate generation of HIP bindings
2024-11-22 16:58:55 +00:00
Andrzej Janik
122676bb13
Add cuCtx*
2024-11-20 02:11:22 +00:00
Andrzej Janik
94e8e13425
Implement device host functions
2024-11-19 20:35:19 +00:00
Andrzej Janik
6c2a8576c2
Start macroizing host code
2024-11-19 16:40:28 +00:00
Andrzej Janik
79362757ed
Change CUDA functions macro to use zluda_bindgen
2024-11-19 05:09:40 +00:00
Andrzej Janik
aa6b61b414
Switch to pregenerated format functions
2024-11-18 01:54:21 +00:00
Andrzej Janik
fa94cdfc16
Generate CUDA types ahead of time
2024-11-17 02:12:28 +00:00
Andrzej Janik
6d8819f2fa
Remove a bunch of unused dependencies
2024-11-15 15:17:55 +00:00
Andrzej Janik
b99cfc7fd2
Fix building zluda_ml
2024-11-15 15:12:34 +00:00
Andrzej Janik
5431157533
Silence LLVM warnings on Linux
2024-11-14 20:25:43 +00:00
Andrzej Janik
c6e8c6a48a
Fix zluda_dump
2024-11-14 20:07:58 +00:00
Andrzej Janik
aaf8356a54
Redefine Curesult as Result<...>
2024-11-14 16:52:58 +00:00
Andrzej Janik
13c6d3dd94
Regenerate main CUDA header, fix zluda_dump
2024-11-12 19:09:45 +00:00
Andrzej Janik
970ba5aa25
Fix linking of AMD device libraries ( #296 )
...
It's weird that it fails without `-mno-link-builtin-bitcode-postopt`. I've tested it only on ROCm 6.2, might be broken on older or newer ROCm
2024-11-02 16:07:44 +01:00
Andrzej Janik
b4cb3ade63
Recover from and report unknown instructions and directives ( #295 )
2024-11-02 15:57:57 +01:00
Andrzej Janik
3870a96592
Re-enable all failing PTX tests ( #277 )
...
Additionally remove unused compilation paths
2024-10-16 03:15:48 +02:00
F. St.
1a63ef62b7
Add note about submodules to README.md ( #280 )
2024-10-05 15:41:46 +02:00
Andrzej Janik
7b2ecdd725
Update README ( #279 )
2024-10-04 16:35:40 +02:00
Andrzej Janik
c92abba2bb
Refactor compilation passes ( #270 )
...
The overarching goal is to refactor all passes so they are module-scoped and not function-scoped. Additionally, make improvements to the most egregiously buggy/unfit passes (so the code is ready for the next major features: linking, ftz handling) and continue adding more code to the LLVM backend
2024-09-23 16:33:46 +02:00
Andrzej Janik
46def3e7e0
Connect new parser to LLVM bitcode backend ( #269 )
...
This is very incomplete. Just enough code to emit LLVM bitcode and continue further development
2024-09-13 01:07:31 +02:00
Andrzej Janik
193eb29be8
PTX parser rewrite ( #267 )
...
Replaces traditional LALRPOP-based parser with winnow-based parser to handle out-of-order instruction modifer. Generate instruction type and instruction visitor from a macro instead of writing by hand. Add separate compilation path using the new parser that only works in tests for now
2024-09-04 15:47:42 +02:00
Andrzej Janik
872054ae40
Fix linguist instructions
2024-08-07 13:29:03 +02:00
Andrzej Janik
90a1f77891
Update README
2024-08-06 16:32:23 +02:00
Andrzej Janik
164c172236
Clean up ZLUDA redirection helper
2022-02-04 14:14:51 +01:00
Andrzej Janik
2753d956df
Overhaul DLL injection
2022-02-04 00:50:25 +01:00
Andrzej Janik
c869a0d611
Add tests for injecting into CLR process
2022-02-03 12:28:42 +01:00
Andrzej Janik
9923a36b76
Redo DLL injection
2022-02-01 23:57:36 +01:00
Andrzej Janik
89bc40618b
Implement static typing for dynamically-loaded CUDA DLLs
2022-01-28 16:44:46 +01:00
Andrzej Janik
07aa1103aa
Add OGL interop to cuda proc macros
2022-01-26 11:32:20 +01:00
Andrzej Janik
6f76c8b34c
Fix crash when printing arrays
2022-01-08 18:44:59 +01:00
Andrzej Janik
2e56871643
Fix luid printing
2022-01-08 00:33:26 +01:00
Andrzej Janik
869efbe0e2
Move zluda_dump to the new CUDA infrastructure
2022-01-07 04:20:33 +01:00
Andrzej Janik
9390db962b
Start converting everything to the new log formatting
2021-12-20 09:35:13 +01:00
Andrzej Janik
bdcef897cc
Start converting zluda_dump logging to provide more detailed
2021-12-19 01:18:03 +01:00
Andrzej Janik
971951bc9e
Improve reporting of recovered unrecognized statement/directive
2021-12-14 00:02:23 +01:00
Andrzej Janik
0ca14d740f
Better reporting of unrecognized tokens
2021-12-13 22:25:26 +01:00
Andrzej Janik
7ba1586d6c
Make all user errors recoverable
2021-12-13 17:20:06 +01:00
Andrzej Janik
04dbafaf4a
Fix typo
2021-12-08 00:39:08 +01:00
Andrzej Janik
50e793e869
Improve logging of dumps
2021-12-08 00:29:00 +01:00
Andrzej Janik
dd915688bd
Dump function names and allow overriding result of cuDeviceComputeCapability
2021-12-06 23:54:47 +01:00
Andrzej Janik
2c6d7ffb7a
Fix remaining issues with detouring nvcuda
2021-12-05 23:01:46 +01:00
Andrzej Janik
26bf0eeaf2
Add more tests for CUDA redirection
2021-12-02 23:47:37 +01:00
Andrzej Janik
400feaf015
Add test for injecting app that directly uses nvcuda
2021-12-01 23:08:07 +01:00
Andrzej Janik
fd1c13560f
Add failing test for overriding directly linked CUDA dll
2021-11-30 01:25:51 +01:00
Andrzej Janik
3558a0a65c
Add integration tests for injector
2021-11-28 23:51:41 +01:00
Andrzej Janik
0104814ac3
Refactor ZLUDA redirection
2021-11-27 14:33:04 +01:00
Andrzej Janik
a125b0746f
Do full dumping from dark api module creation
2021-11-21 02:23:01 +01:00
Andrzej Janik
2cb5960a18
Add missing file
2021-11-16 02:08:14 +01:00