up to 16.7 million digits • PiFast (1997), up to 16 billion digits • y-cruncher (2009), up to 108 quadrillion (10^15) digits Time to calculate 1 billion digits https://hwbot.org/benchmark/y-cruncher_-_pi-1b/
was in high school • Fastest program to calculate pi on a single-node computer • Written in C++ with hand optimizations for modern CPUs • You need a fast computer with a lot of memory and storage ◦ 468 TiB for 100 trillion digits ◦ Too big to fit in DRAM
slower than CPU • CPU speed isn’t very important. • The 100 trillion calculation took 157 days, moving 62.8 PiB of data. • The average CPU utilization is 35%. • With infinitely fast CPU, it’d still take more than 100 days.
• Maximum Persistent Disk per GCE VM: 257 TiB • Storage we need: 500 TiB • Need network storage: iSCSI ◦ Block device over TCP/IP provided by OS • Network throughput limit: 100 Gbps
• Text inside <% %> runs as Ruby code. • <%= %> replaces the block with the code output. Example: Hello, World こんにちは、世界! <%= 'Hello, World' %> こんにちは、世界!
a Rubyist! • Any tool would’ve worked. • Picked something I was already familiar with. • The goal is to finish benchmarking as quickly as possible. ◦ Less about learning a new tool.
Sequential Read (GiB/s) 3.48 11.2 312% Sequential Write (GiB/s) 6.79 8.65 127% VST Computing (GiB/s) 14.7 25.6 174% VST I/O (GiB/s) 3.50 7.52 215% Actual run time: 157 days It could’ve taken more than 300 days without any optimizations.
tools for text processing. • Trial and error is faster on command line. • It’s one-off. No maintenance needed. • Google Sheets is easy to share and collaborate with. • Didn’t want to lose more time benchmarking vs improvements.
to RailsGirls as a coach. A few years later, I spoke about RailsGirls at RubyKaigi 2014 for the first time as a speaker. https://rubykaigi.org/2014/presentation/S-HarukaIwao/
job with a referral from someone I met at RubyKaigi. • When I interviewed for Google DevRel in 2017, I submitted the video of my talk at RubyKaigi 2014 as my English conference talk example. ◦ The hiring manager also valued my RailsGirls contributions.
pi, but didn’t have resources. • Google’s Cloud DevRel had a Pi Day tradition of showcasing Cloud technologies with pi calculations. • I suddenly had the right idea at the right place. • My manager and director supported the pi calculation project.