Overview
Explore future performance improvements in set functions for the Dyalog programming language in this 21-minute conference talk from Dyalog '23. Delve into Karta Kooner's presentation on the results of his work to enhance the performance of set-related primitives, including membership (∊), index-of (⍳), and union (∪). Examine heat maps showcasing membership performance on small to medium-length vectors across various data types, such as Boolean, 1-byte integers, 2-byte integers, and 4-byte integers. Gain insights into algorithm selection issues, hash collisions, and their impact on performance. Discover the conclusions drawn from this research and learn about future work planned for upcoming versions of the Dyalog interpreter. Explore the potential of tweaking hash table I-beams and using instrumented interpreters to further optimize set function performance.
Syllabus
About Dyalog version 18.0 performance
Set functions
Heat maps of performance of membership on small to medium length vectors
Boolean
1 byte integers
Unsigned 1 byte integers algorithm selection issue
2 byte integers hash collisions
Unsigned 2 byte integers
4 byte integers
Unsigned 4 byte integers
Conclusions and future work
Tweak hash table I-beam and instrumented interpreter
Taught by
Dyalog User Meetings