{"id":711,"date":"2009-11-12T09:30:14","date_gmt":"2009-11-12T08:30:14","guid":{"rendered":"http:\/\/www.stenyak.com\/?p=711"},"modified":"2009-11-12T09:30:14","modified_gmt":"2009-11-12T08:30:14","slug":"googles-go-simple-stupid-benchmark-2nd-round-memspeed","status":"publish","type":"post","link":"https:\/\/www.stenyak.com\/?p=711","title":{"rendered":"Google&#8217;s &#8220;go&#8221; simple &#038; stupid benchmark (2nd round: memspeed)"},"content":{"rendered":"<p>Continued from <a href=\"http:\/\/www.stenyak.com\/archives\/697\/googles-go-simple-stupid-benchmark\/\">Round 1: I\/O<\/a><\/p>\n<p>Thanks to <a href=\"http:\/\/hombrealto.com\">Juanval<\/a> for the <a href=\"http:\/\/www.stenyak.com\/archives\/697\/googles-go-simple-stupid-benchmark\/#comments\">suggestion<\/a>.<\/p>\n<pre>$ cat <strong>hello.cpp<\/strong> &amp;&amp; g++ hello.cpp &amp;&amp;\n&gt; time for i in $(seq 10); do .\/a.out; done\nint main (int argc, char** argv)\n{\n    const int size = 250;\n    int a[size],b[size],c[size];\n    for(int i=0;i&lt;size;++i)\n        for(int j=0;j&lt;size;++j)\n            for(int k=0;k&lt;size;++k)\n                c[k]+=a[i]*b[j];\n}\n<strong>real<\/strong><span><strong>\t<\/strong><\/span><strong>0m1.041s<\/strong>\n<strong>user<\/strong><span><strong>\t<\/strong><\/span><strong>0m0.944s<\/strong>\n<strong>sys<\/strong><span><strong>\t<\/strong><\/span><strong>0m0.020s<\/strong><\/pre>\n<hr \/>\n<pre>$ cat <strong>hello.py<\/strong> &amp;&amp;\n&gt; time for i in $(seq 10); do python hello.py; done\nsize = 250\na,b,c = [0]*size, [0]*size, [0]*size\nfor i in a:\n    for j in b:\n        for k in range(0,size):\n            c[k] += i*j\n<strong>real<\/strong><span><strong>\t<\/strong><\/span><strong>1m7.210s<\/strong>\n<strong>user<\/strong><span><strong>\t<\/strong><\/span><strong>1m4.924s<\/strong>\n<strong>sys<\/strong><span><strong>\t<\/strong><\/span><strong>0m0.084s<\/strong><\/pre>\n<hr \/>\n<pre>$ cat <strong>hello.go<\/strong> &amp;&amp; 8g hello.go &amp;&amp; 8l hello.8 &amp;&amp;\n&gt; time for i in $(seq 10); do .\/8.out; done\npackage main\nfunc main()\n{\n    var a,b,c [250]int;\n    for i := range a\n    {\n        for j := range b\n        {\n            for k := range c\n            {\n                c[k] += a[i] * b[j];\n            }\n        }\n    }\n}\n<strong>real<\/strong><span><strong>\t<\/strong><\/span><strong>0m3.000s<\/strong>\n<strong>user<\/strong><span><strong>\t<\/strong><\/span><strong>0m2.812s<\/strong>\n<strong>sys<\/strong><span><strong>\t<\/strong><\/span><strong>0m0.020s<\/strong><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Continued from Round 1: I\/O Thanks to Juanval for the suggestion. $ cat hello.cpp &amp;&amp; g++ hello.cpp &amp;&amp; &gt; time for i in $(seq 10); do .\/a.out; done int main (int argc, char** argv) { const int size = 250; int a[size],b[size],c[size]; for(int i=0;i&lt;size;++i) for(int j=0;j&lt;size;++j) for(int k=0;k&lt;size;++k) c[k]+=a[i]*b[j]; } real 0m1.041s user 0m0.944s sys [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3,4],"tags":[13],"_links":{"self":[{"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/posts\/711"}],"collection":[{"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=711"}],"version-history":[{"count":0,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=\/wp\/v2\/posts\/711\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=711"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=711"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.stenyak.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=711"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}