[EN] Cores unleashed Part II: Introduction to GobiesVM (and Software Transactional Memory)
Parallelism in Ruby has been continuously, if not extensively, studied recently. Besides MRI which uses global interpreter lock to maintain thread-safety meanwhile eliminates the possibility to exploit multi-core processing power, most alternative Ruby implementations take the fine-grained lock approach for maximum CPU utilization. Yet traditional locking mechanism requires careful design or could cause poor performance and unpredictable results. Locking mechanism itself is also too sophisticated for general developers who wish to take advantage of modern hardware.
GobiesVM aims to solve this dilemma via a state-of-the-art Software Transactional Memory (STM) approach. This talk will introduce architecture and internals of GobiesVM, the way STM works and how STM affects the performance regarding parallel Ruby programs.
You can find GobiesVM at https://github.com/brucehsu/GobiesVM
Szu-Kai Hsu (brucehsu)
- Job title
- Web Developer
Szu-Kai Hsu (brucehsu) has just received his Master's degree on Computer Science at National Chung Cheng University in Taiwan and now works as a web developer at GoodLife. He has been programming Ruby and enjoying it since he first discovered Ruby in 2008 when he was a student of Tainan First High School.
- Tainan, Taiwan