Repository navigation
Stop using GPUCompiler's internal type_tag in the relocation test - #3500
Conversation
The relocation patching test read a libjulia global through `GPUCompiler.Runtime.type_tag(Val(:float32))`. JuliaGPU/GPUCompiler.jl#1067 removes that method, since the runtime no longer loads type tags from data symbols. Emit the load from `jl_float32_type` with `llvmcall` instead, which exercises the same relocation without depending on GPUCompiler internals.
Benchmark resultsCompared with d32eb2641, the merge base. Times are the minimum time of every benchmark. A change is unusual when it exceeds both three times the benchmark's typical change between consecutive runs on the default branch and a minimum per category (performance 3%, latency 5%, applications 3%, other 3%). A benchmark that starts or stops allocating is listed however few the allocations. A single run can still be a fluke, so rerun before drawing conclusions.
No unusual changes. All benchmarks
History: https://juliagpu.org/perf/?pkg=cuda |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3500 +/- ##
===========================================
+ Coverage 43.88% 86.20% +42.32%
===========================================
Files 196 196
Lines 21356 21247 -109
===========================================
+ Hits 9372 18317 +8945
+ Misses 11984 2930 -9054 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
The relocation patching test read a libjulia global through
GPUCompiler.Runtime.type_tag(Val(:float32)). JuliaGPU/GPUCompiler.jl#1067 removes that method, since the runtime no longer loads type tags from data symbols. Emit the load fromjl_float32_typewithllvmcallinstead, which exercises the same relocation without depending on GPUCompiler internals.