(no title)
nazri1 | 7 years ago
$ time ./tinykaboom
./tinykaboom 78.08s user 0.02s system 369% cpu 21.159 total
Then I wondered how it would fare if I were to port it to Go and went ahead and hastily did port to Go and thought that, "hmmm this should run a bit slower than the c++ version" but surprisingly it ran more than twice faster: $ go build ./tinykaboom.go
$ time ./tinykaboom
./tinykaboom 34.32s user 0.03s system 368% cpu 9.315 total
https://github.com/holygeek/tinykaboom/blob/master/tinykaboo...Here's the corresponding perf report:
Go:
Samples: 103K of event 'cycles:pp', Event count (approx.): 37252033995665
Overhead Command Shared Object Symbol
32.17% tinykaboom tinykaboom [.] math.sin
28.80% tinykaboom tinykaboom [.] main.hash
11.81% tinykaboom tinykaboom [.] main.rotate
7.76% tinykaboom tinykaboom [.] math.Min
5.18% tinykaboom tinykaboom [.] main.lerpFloat64
4.25% tinykaboom tinykaboom [.] main.noise
2.59% tinykaboom tinykaboom [.] runtime.mallocgc
2.59% tinykaboom tinykaboom [.] main.fractal_brownian_motion
2.58% tinykaboom tinykaboom [.] main.signed_distance
c++: Samples: 234K of event 'cycles:pp', Event count (approx.): 86721459552303
Overhead Command Shared Object Symbol
67.93% tinykaboom libm-2.23.so [.] __sin_avx
30.80% tinykaboom tinykaboom [.] _Z5noiseRK3vecILm3EfE
1.27% tinykaboom libm-2.23.so [.] __floorf_sse41
0.00% tinykaboom tinykaboom [.] _Z23fractal_brownian_motionRK3vecILm3EfE
0.00% tinykaboom tinykaboom [.] floorf@plt
If anyone can give suggestions on how to make the tinykaboom.cpp faster that would be neat!
namirez|7 years ago
haldean|7 years ago
nazri1|7 years ago
I ran the comparison again on another machine that I have and this time their performances are about the same:
c++:
go: