Commit Graph

73 Commits

Author SHA1 Message Date
Ryan Fleury 25beda50ca mask off more work based on subset flags from baker 2025-10-15 15:44:04 -07:00
Ryan Fleury d9d321c074 mask off name map builds 2025-10-15 15:34:08 -07:00
Ryan Fleury 80b6744673 move more scratch artifacts to scratch lifetimes 2025-10-15 12:01:40 -07:00
Ryan Fleury 1d9870c1f9 rdi string baking, name map baking, idx run baking: put temporary per-lane artifacts/maps onto scratch & pop - reduce permanent memory usage 2025-10-15 11:55:45 -07:00
Ryan Fleury 5cc9d9ae89 remove new marker 2025-10-14 16:37:47 -07:00
Ryan Fleury c7d0a3431b eliminate old vmap baking 2025-10-14 16:35:24 -07:00
Ryan Fleury b757762908 plug in new vmap baking 2025-10-14 16:34:51 -07:00
Ryan Fleury feb5249f47 first pass at faster & simplified vmap baking: sort ranges by both base voff *and* size, generate vmap directly from sorted ranges w/ stack machine; avoid quadratic pop 2025-10-14 16:02:47 -07:00
Ryan Fleury 92517ef2d7 re-enable single-step on empty trap net, if no line info is present 2025-10-14 10:00:31 -07:00
Ryan Fleury 010825a0bb checkpoint on attempt at wide vmap baking 2025-10-13 17:32:53 -07:00
Ryan Fleury 89be41fda9 checkpoint: first pass at wide vmap baking 2025-10-13 17:00:01 -07:00
Ryan Fleury b688c69f13 radbin: compress sections wide, deduplicate work 2025-10-13 13:07:37 -07:00
Ryan Fleury ec39cefc9e correctly decompress rdis in radbin dumping path; do not compress zero-sized sections in rdi make 2025-10-13 12:47:46 -07:00
Ryan Fleury 2d672d232f checksum baking & rdi changes; checksum dumping 2025-10-02 16:12:53 -07:00
Ryan Fleury c1e32b93a7 switch from variable size checksum data sections to just making well-defined fixed size ones for all of the concrete cases 2025-10-02 15:43:01 -07:00
Ryan Fleury 403d05cc8b first pass at checksum baking 2025-10-02 14:17:44 -07:00
Ryan Fleury 23a68faadd rdim2 -> rdim; p2r2 -> p2r 2025-09-05 17:06:19 -07:00
Ryan Fleury 51ef166e60 eliminate all old conversion/baking code 2025-09-05 17:02:56 -07:00
Ryan Fleury a2b4e7bdc5 fix missing null voff in scope voff data section 2025-09-05 16:02:38 -07:00
Ryan Fleury 4eca7f7fea source file / source line map baking 2025-09-05 15:19:30 -07:00
Ryan Fleury efb24fb0fa checkpoint on src file / src line map baking 2025-09-05 15:19:30 -07:00
Ryan Fleury d2e6e5de5a oops - fix non-allocation in previous part 2025-09-05 15:19:30 -07:00
Ryan Fleury 15e9cda7d2 new location info baking, new constants baking 2025-09-05 15:19:30 -07:00
Ryan Fleury ee8dc27428 location data / location block baking 2025-09-05 15:19:30 -07:00
Ryan Fleury cc9f45299a eliminate separate chunk list for location cases 2025-09-05 15:19:30 -07:00
Ryan Fleury fa05bbf2a5 udt member/enum-val layout & nested baking; use rio to pre-fault all commits 2025-09-05 15:19:30 -07:00
Ryan Fleury a84142ed77 re-nest enum vals & members into udts; we want to keep the building API flexible with order of member building, and we can assume ~statistically-uniform distribution across all udts, so it makes more sense to just parallelize on udts, and pay the small cost of an upfront per-lane layout. 2025-09-05 15:19:30 -07:00
Ryan Fleury 8b83e5ef48 more non-determinism & bug fixes in name map & idx run map building 2025-09-05 15:19:29 -07:00
Ryan Fleury 27f2acd45d further progress/fixes on pdb -> rdi determinism 2025-09-05 15:19:29 -07:00
Ryan Fleury 6234fb0c49 fix incorrect scope voff serialization offsets 2025-09-05 15:19:29 -07:00
Ryan Fleury 955f033043 fix incorrect idx run baking; slots need to be laid out based on *idx counts*, rather than *value counts*! 2025-09-05 15:19:29 -07:00
Ryan Fleury e276ce4fb3 stub out src file baking 2025-09-05 15:19:29 -07:00
Ryan Fleury 57125fee1b eliminate helpers from string map baking; no point in extra entry points for partial bakes 2025-09-05 15:19:29 -07:00
Ryan Fleury 2f9006bb8a bugfix name map baking 2025-09-05 15:19:29 -07:00
Ryan Fleury 46ac437e86 name map baking / serialization 2025-09-05 15:19:29 -07:00
Ryan Fleury 92f24a043d idx runs baking 2025-09-05 15:19:29 -07:00
Ryan Fleury 55b05301a4 expand scope vmap sorting -> all vmaps; do final vmap bakes; do first pass of scope (1 scope -> many locals, many voffs) layout / baking 2025-09-05 15:19:29 -07:00
Ryan Fleury cc0d707eb2 eliminate 'lane groups', since we can go wide on the sorts now 2025-09-05 15:19:29 -07:00
Ryan Fleury 1d7cd4f4d2 cleanup / radix sort experimentation 2025-09-05 15:19:29 -07:00
Ryan Fleury a44fbb0909 parallel radix sort for scope vmap baking 2025-09-05 15:19:29 -07:00
Ryan Fleury 8fe4b3524f with sufficient threads, split baking threads into two groups: small # of threads to do expensive 'background' baking tasks, use the rest to do wide predictable baking stuff 2025-09-05 15:19:29 -07:00
Ryan Fleury f065ca33a2 location block baking 2025-09-05 15:19:29 -07:00
Ryan Fleury 3b1aae44d0 location info baking 2025-09-05 15:19:29 -07:00
Ryan Fleury 71cbdba76e remove old section requirement part of rdi, since all sections are now fixed; unit/scope/global vmap baking; collapse chunk list impls 2025-09-05 15:19:29 -07:00
Ryan Fleury e4ac3febd0 finish new udt baking; pull members & enum vals out of sub-udt lists, makes it much harder to layout & parallelize - instead pull them aside into their own chunk lists, require that UDTs just point to their first member; that way we can go wide when baking UDT members/enum-vals 2025-09-05 15:19:29 -07:00
Ryan Fleury b8414c4bfd type, first part of udt baking, string baking 2025-09-05 15:19:29 -07:00
Ryan Fleury ad4e57ec5a idx run baking 2025-09-05 15:19:29 -07:00
Ryan Fleury b22f6d3544 fully wide name map baking, joining, & sorting 2025-09-05 15:19:29 -07:00
Ryan Fleury 95e88e92e7 top-level info string baking 2025-09-05 15:19:29 -07:00
Ryan Fleury 618233eba1 checkpoint on new baker; globals, threads, inline sites 2025-09-05 15:19:29 -07:00