
Ivo Gabe de Wolff
Universiteit Utrecht
Ik doe onderzoek naar high performance parallel computing, aan de Universiteit Utrecht. Ik heb een nieuw scheduling algoritme ontworpen, genaamd Work Assisting, voor thread-level parallelisme op CPUs. Dit algoritme handelt taak- en data-parallelisme los af, en kan daarom verschillende strategiën voor beide vormen toepassen.
Naast dit scheduling algoritme, heb ik ook gewerkt aan snellere scan (prefix sum) algoritmen en concurrent geheugenbeheer.
Ik pas deze onderwerpen toe in de context van Accelerate, een library voor high-performance parallel array programming in Haskell. De Accelerate compiler kan code genereren voor multi-core CPUs en GPUs. Voor mijn PhD heb ik een nieuwe compilerarchitectuur en runtime ontworpen voor Accelerate. Deze nieuwe runtime gebruikt de Work Assisting scheduler, en ondersteunt onze snellere parallelle scans. De nieuwe versie van Accelerate op de CPU werkt nu grotendeels, en ik werk nu aan de GPU implementatie.
Publicaties
Scheduling Task and Data Parallelism in Array Languages with Work Assisting
De Wolff, I. G., Van Balen, D. & Keller, G., To Appear
Comparing Parallel Functional Array Languages: Programming and Performance
Van Balen, D., De Matteis, T., Grelck, C., Henriksen, T., Hsu, A. W., Keller, G., Koopman, T., McDonell, T. L., Oancea, C., Scholz, S.-B., Šinkarovs, A., Smeding, T., Trinder, P., De Wolff, I. G. & Ziogas, A. N., 13 May 2025, Preprint
A Fast Wait-Free Solution to Read-Reclaim Races in Reference Counting
De Wolff, I. G., Anderson, D., Keller, G. K. & Seletskiy, A., 26 Aug 2024, Euro-Par 2024: Parallel Processing - 30th European Conference on Parallel and Distributed Processing, Proceedings.
Fusing Gathers with Integer Linear Programming
Van Balen, D., Keller, G., De Wolff, I. G. & McDonell, T. L., 28 Aug 2024, FProPer 2024: Proceedings of the 1st ACM SIGPLAN International Workshop on Functional Programming for Productivity and Performance, Co-located with: ICFP 2024
Work Assisting: Linking Task-Parallel Work Stealing with Data-Parallel Self Scheduling
De Wolff, I. G. & Keller, G., 20 Jun 2024, ARRAY 2024: Proceedings of the 10th ACM SIGPLAN International Workshop on Libraries, Languages and Compilers for Array Programming
Zero-Overhead Parallel Scans for Multi-Core CPUs
De Wolff, I. G., Van Balen, D., Keller, G. & McDonell, T. L., 6 Mar 2024, PMAM 2024: Proceedings of the 15th International Workshop on Programming Models and Applications for Multicores and Manycores
Accelerating nested data parallelism: Preserving regularity
Van den Haak, L. B., McDonell, T. L., Keller, G. K. & De Wolff, I. G., 2020, Euro-Par 2020: Parallel Processing - 26th International Conference on Parallel and Distributed Computing
Refining types using type guards in TypeScript
De Wolff, I. G., Hage, J., Jan 2017, PEPM 2017: Proceedings of the 2017 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation