Benchmarking Go1.3.3 dan Go1.4

Bahasa pemrograman Go1.4 telah rilis.
Mari kita lihat performa antara Go1.3.3 dengan Go1.4. Dengan menggunakan tool autobench.


Install Go1.4 menggunakan gvm.
  • sudo apt-get install curl git mercurial make binutils bison gcc
  • bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
  • source ~/.gvm/scripts/gvm 
  • gvm listall
  • gvm install go1.4
  • gvm use go1.4
  • go version


Install autobench tool-nya.

1.Buat direktori baru dan masuk lah kedalam direktori tersebut.


 2. Install dengan mengunakan keyword git clone -b autobench-next https://github.com/davecheney/autobench.git

 
 
3.Masuk kedalam direktori autobench, lalu beri keyword make untuk melakukan benchmarking.


Berikut adalah hasil benchmarking yang dilakukan 64-bit linux, Intel Core i5 3337u @1.80Ghz
 # go1
benchmark                          old ns/op      new ns/op      delta
BenchmarkBinaryTree17              6133763303     8875827614     +44.70%
BenchmarkFannkuch11                4058316508     3787213147     -6.68%
BenchmarkFmtFprintfEmpty           105            145            +38.10%
BenchmarkFmtFprintfString          333            404            +21.32%
BenchmarkFmtFprintfInt             275            371            +34.91%
BenchmarkFmtFprintfIntInt          393            604            +53.69%
BenchmarkFmtFprintfPrefixedInt     360            521            +44.72%
BenchmarkFmtFprintfFloat           574            742            +29.27%
BenchmarkFmtManyArgs               1671           2355           +40.93%
BenchmarkGobDecode                 11629990       17253230       +48.35%
BenchmarkGobEncode                 8091323        13605239       +68.15%
BenchmarkGzip                      529806352      559829346      +5.67%
BenchmarkGunzip                    137109569      135334476      -1.29%
BenchmarkHTTPClientServer          57714          69202          +19.91%
BenchmarkJSONEncode                31420218       30856856       -1.79%
BenchmarkJSONDecode                115829106      122366418      +5.64%
BenchmarkMandelbrot200             5642455        5739816        +1.73%
BenchmarkGoParse                   6132665        6950094        +13.33%
BenchmarkRegexpMatchEasy0_32       175            199            +13.71%
BenchmarkRegexpMatchEasy0_1K       456            455            -0.22%
BenchmarkRegexpMatchEasy1_32       147            175            +19.05%
BenchmarkRegexpMatchEasy1_1K       1167           1505           +28.96%
BenchmarkRegexpMatchMedium_32      262            368            +40.46%
BenchmarkRegexpMatchMedium_1K      89835          121339         +35.07%
BenchmarkRegexpMatchHard_32        4444           6397           +43.95%
BenchmarkRegexpMatchHard_1K        142580         207478         +45.52%
BenchmarkRevcomp                   857876310      843412411      -1.69%
BenchmarkTemplate                  138814536      149721084      +7.86%
BenchmarkTimeParse                 576            571            -0.87%
BenchmarkTimeFormat                509            525            +3.14%

benchmark                         old MB/s     new MB/s     speedup
BenchmarkGobDecode                66.00        44.49        0.67x
BenchmarkGobEncode                94.86        56.41        0.59x
BenchmarkGzip                     36.63        34.66        0.95x
BenchmarkGunzip                   141.53       143.38       1.01x
BenchmarkJSONEncode               61.76        62.89        1.02x
BenchmarkJSONDecode               16.75        15.86        0.95x
BenchmarkGoParse                  9.44         8.33         0.88x
BenchmarkRegexpMatchEasy0_32      181.98       160.46       0.88x
BenchmarkRegexpMatchEasy0_1K      2244.82      2248.60      1.00x
BenchmarkRegexpMatchEasy1_32      216.45       182.85       0.84x
BenchmarkRegexpMatchEasy1_1K      877.03       680.10       0.78x
BenchmarkRegexpMatchMedium_32     3.81         2.71         0.71x
BenchmarkRegexpMatchMedium_1K     11.40        8.44         0.74x
BenchmarkRegexpMatchHard_32       7.20         5.00         0.69x
BenchmarkRegexpMatchHard_1K       7.18         4.94         0.69x
BenchmarkRevcomp                  296.27       301.36       1.02x
BenchmarkTemplate                 13.98        12.96        0.93x
# runtime
benchmark                                 old ns/op     new ns/op     delta
BenchmarkAppend                           55.6          59.3          +6.65%
BenchmarkAppend1Byte                      151           153           +1.32%
BenchmarkAppend4Bytes                     137           156           +13.87%
BenchmarkAppend8Bytes                     140           157           +12.14%
BenchmarkAppend16Bytes                    149           148           -0.67%
BenchmarkAppend32Bytes                    142           174           +22.54%
BenchmarkAppendSpecialCase                33.9          35.9          +5.90%
BenchmarkSelectUncontended                276           333           +20.65%
BenchmarkSelectContended                  269           322           +19.70%
BenchmarkSelectNonblock                   128           61.6          -51.88%
BenchmarkChanUncontended                  74.3          97.9          +31.76%
BenchmarkChanContended                    73.1          99.1          +35.57%
BenchmarkChanSync                         166           463           +178.92%
BenchmarkChanProdCons0                    172           450           +161.63%
BenchmarkChanProdCons10                   106           197           +85.85%
BenchmarkChanProdCons100                  83.0          124           +49.40%
BenchmarkChanProdConsWork0                661           977           +47.81%
BenchmarkChanProdConsWork10               601           763           +26.96%
BenchmarkChanProdConsWork100              574           639           +11.32%
BenchmarkChanCreation                     228           1667          +631.14%
BenchmarkChanSem                          72.7          100           +37.55%
BenchmarkCallClosure                      4.82          5.11          +6.02%
BenchmarkCallClosure1                     5.26          6.55          +24.52%
BenchmarkCallClosure2                     35.4          168           +374.58%
BenchmarkCallClosure3                     36.9          185           +401.36%
BenchmarkCallClosure4                     37.3          180           +382.57%
BenchmarkComplex128DivNormal              24.6          35.3          +43.50%
BenchmarkComplex128DivNisNaN              20.2          22.0          +8.91%
BenchmarkComplex128DivDisNaN              19.8          26.8          +35.35%
BenchmarkComplex128DivNisInf              13.5          21.1          +56.30%
BenchmarkComplex128DivDisInf              15.5          18.9          +21.94%
BenchmarkConvT2ESmall                     13.1          103           +686.26%
BenchmarkConvT2EUintptr                   0.80          217           +27025.00%
BenchmarkConvT2ELarge                     75.1          410           +445.94%
BenchmarkConvT2ISmall                     14.8          107           +622.97%
BenchmarkConvT2IUintptr                   1.36          219           +16002.94%
BenchmarkConvT2ILarge                     81.7          338           +313.71%
BenchmarkConvI2E                          5.44          27.8          +411.03%
BenchmarkConvI2I                          21.8          43.8          +100.92%
BenchmarkAssertE2T                        14.1          15.1          +7.09%
BenchmarkAssertE2TLarge                   15.3          13.1          -14.38%
BenchmarkAssertE2I                        23.4          44.2          +88.89%
BenchmarkAssertI2T                        15.5          13.5          -12.90%
BenchmarkAssertI2I                        22.3          47.1          +111.21%
BenchmarkAssertI2E                        5.82          27.2          +367.35%
BenchmarkAssertE2E                        0.97          12.5          +1188.66%
BenchmarkMalloc8                          32.3          184           +469.66%
BenchmarkMalloc16                         50.0          388           +676.00%
BenchmarkMallocTypeInfo8                  67.5          228           +237.78%
BenchmarkMallocTypeInfo16                 71.3          336           +371.25%
BenchmarkHashStringSpeed                  32.0          35.5          +10.94%
BenchmarkHashInt32Speed                   20.1          25.0          +24.38%
BenchmarkHashInt64Speed                   20.4          27.5          +34.80%
BenchmarkHashStringArraySpeed             101           112           +10.89%
BenchmarkMegMap                           28.0          39.5          +41.07%
BenchmarkMegOneMap                        19.0          22.8          +20.00%
BenchmarkMegEqMap                         106032        103497        -2.39%
BenchmarkMegEmptyMap                      6.18          6.59          +6.63%
BenchmarkSmallStrMap                      30.3          34.1          +12.54%
BenchmarkMapStringKeysEight_16            28.1          39.4          +40.21%
BenchmarkMapStringKeysEight_32            28.7          38.2          +33.10%
BenchmarkMapStringKeysEight_64            30.1          39.6          +31.56%
BenchmarkMapStringKeysEight_1M            29.1          33.7          +15.81%
BenchmarkIntMap                           25.9          21.6          -16.60%
BenchmarkRepeatedLookupStrMapKey32        56.2          38.6          -31.32%
BenchmarkRepeatedLookupStrMapKey1M        450393        427731        -5.03%
BenchmarkNewEmptyMap                      195           767           +293.33%
BenchmarkMemmove32                        8.10          7.00          -13.58%
BenchmarkMemmove4K                        165           163           -1.21%
BenchmarkMemmove64K                       3645          4541          +24.58%
BenchmarkMemmove4M                        1082945       958358        -11.50%
BenchmarkMemmove64M                       18982527      17719144      -6.66%
BenchmarkFinalizer                        1634          1981          +21.24%
BenchmarkFinalizerRun                     2845          5167          +81.62%
BenchmarkStackGrowth                      625           819           +31.04%
BenchmarkStackGrowthDeep                  83683         95980         +14.69%
BenchmarkCreateGoroutines                 115           281           +144.35%
BenchmarkCreateGoroutinesParallel         118           294           +149.15%
BenchmarkMatmult                          10.4          13.9          +33.65%
BenchmarkIfaceCmp100                      150           160           +6.67%
BenchmarkIfaceCmpNil100                   225           259           +15.11%
BenchmarkDefer                            62.6          189           +201.92%
BenchmarkDefer10                          54.0          154           +185.19%
BenchmarkDeferMany                        2880          257           -91.08%
BenchmarkCompareStringEqual               12.7          10.9          -14.17%
BenchmarkCompareStringIdentical           6.20          6.39          +3.06%
BenchmarkCompareStringSameLength          12.4          10.6          -14.52%
BenchmarkCompareStringDifferentLength     1.38          1.50          +8.70%
BenchmarkCompareStringBigUnaligned        119813        120687        +0.73%
BenchmarkCompareStringBig                 116863        123318        +5.52%

benchmark                              old MB/s     new MB/s     speedup
BenchmarkMemmove32                     3951.36      4573.48      1.16x
BenchmarkMemmove4K                     24688.15     25040.87     1.01x
BenchmarkMemmove64K                    17978.01     14429.34     0.80x
BenchmarkMemmove4M                     3873.05      4376.55      1.13x
BenchmarkMemmove64M                    3535.30      3787.36      1.07x
BenchmarkCompareStringBigUnaligned     8751.83      8688.47      0.99x
BenchmarkCompareStringBig              8972.72      8503.05      0.95x
# http
benchmark                                    old ns/op     new ns/op     delta
BenchmarkHeaderWriteSubset                   1419          1458          +2.75%
BenchmarkReadRequestChrome                   8720          22886         +162.45%
BenchmarkReadRequestCurl                     5160          12064         +133.80%
BenchmarkReadRequestApachebench              5426          12389         +128.33%
BenchmarkReadRequestSiege                    5581          14967         +168.18%
BenchmarkReadRequestWrk                      3394          10792         +217.97%
BenchmarkClientServer                        78739         139035        +76.58%
BenchmarkClientServerParallel4               69845         127365        +82.35%
BenchmarkClientServerParallel64              69457         136754        +96.89%
BenchmarkServer                              122955        205262        +66.94%
BenchmarkServerFakeConnNoKeepAlive           15948         46624         +192.35%
BenchmarkServerFakeConnWithKeepAlive         14429         33162         +129.83%
BenchmarkServerFakeConnWithKeepAliveLite     9189          21371         +132.57%
BenchmarkServerHandlerTypeLen                12756         25163         +97.26%
BenchmarkServerHandlerNoLen                  10424         25949         +148.94%
BenchmarkServerHandlerNoType                 11368         27660         +143.31%
BenchmarkServerHandlerNoHeader               8585          19064         +122.06%

benchmark                           old MB/s     new MB/s     speedup
BenchmarkReadRequestChrome          70.06        26.70        0.38x
BenchmarkReadRequestCurl            15.11        6.47         0.43x
BenchmarkReadRequestApachebench     15.11        6.62         0.44x
BenchmarkReadRequestSiege           27.05        10.09        0.37x
BenchmarkReadRequestWrk             11.78        3.71         0.31x
# floats
benchmark                   old ns/op     new ns/op     delta
BenchmarkMinSmall           18.2          16.7          -8.24%
BenchmarkMinMed             1044          1161          +11.21%
BenchmarkMinLarge           92159         110778        +20.20%
BenchmarkMinHuge            10846671      11793869      +8.73%
BenchmarkAddTwoSmall        39.1          31.7          -18.93%
BenchmarkAddFourSmall       64.2          66.2          +3.12%
BenchmarkAddTwoMed          1516          1422          -6.20%
BenchmarkAddFourMed         4124          4484          +8.73%
BenchmarkAddTwoLarge        158600        185780        +17.14%
BenchmarkAddFourLarge       494428        529126        +7.02%
BenchmarkAddTwoHuge         28520977      28369760      -0.53%
BenchmarkAddFourHuge        85719656      85881116      +0.19%
BenchmarkLogSumExpSmall     421           358           -14.96%
BenchmarkLogSumExpMed       27232         28789         +5.72%
BenchmarkLogSumExpLarge     2895432       2886616       -0.30%
BenchmarkLogSumExpHuge      313408852     324740257     +3.62%
BenchmarkDotSmall           22.8          24.6          +7.89%
BenchmarkDotMed             1732          1332          -23.09%
BenchmarkDotLarge           180972        165742        -8.42%
BenchmarkDotHuge            19131093      19874196      +3.88%
# cipher
benchmark                  old ns/op     new ns/op     delta
BenchmarkAESCFBEncrypt     5724          5832          +1.89%
BenchmarkAESCFBDecrypt     6548          5571          -14.92%
BenchmarkAESOFB            3612          3884          +7.53%
BenchmarkAESCTR            3252          3734          +14.82%
BenchmarkAESCBCEncrypt     4378          4255          -2.81%
BenchmarkAESCBCDecrypt     5628          4740          -15.78%

benchmark                  old MB/s     new MB/s     speedup
BenchmarkAESCFBEncrypt     178.70       175.40       0.98x
BenchmarkAESCFBDecrypt     156.22       183.60       1.18x
BenchmarkAESOFB            283.21       263.38       0.93x
BenchmarkAESCTR            314.54       273.97       0.87x
BenchmarkAESCBCEncrypt     233.88       240.61       1.03x
BenchmarkAESCBCDecrypt     181.92       216.01       1.19x
#megajson
benchmark                old ns/op     new ns/op     delta
BenchmarkCodeEncoder     22395469      22024411      -1.66%
BenchmarkCodeDecoder     61054367      62628071      +2.58%

benchmark                old MB/s     new MB/s     speedup
BenchmarkCodeEncoder     86.65        88.11        1.02x
BenchmarkCodeDecoder     31.78        30.98        0.97x
#snappy
benchmark                   old ns/op     new ns/op     delta
BenchmarkWordsDecode1e3     3546          3604          +1.64%
BenchmarkWordsDecode1e4     43168         45443         +5.27%
BenchmarkWordsDecode1e5     566674        631739        +11.48%
BenchmarkWordsDecode1e6     5546417       6667262       +20.21%
BenchmarkWordsEncode1e3     13566         13935         +2.72%
BenchmarkWordsEncode1e4     115694        101053        -12.65%
BenchmarkWordsEncode1e5     1327693       1324303       -0.26%
BenchmarkWordsEncode1e6     10078647      11433348      +13.44%

benchmark                   old MB/s     new MB/s     speedup
BenchmarkWordsDecode1e3     281.96       277.41       0.98x
BenchmarkWordsDecode1e4     231.65       220.05       0.95x
BenchmarkWordsDecode1e5     176.47       158.29       0.90x
BenchmarkWordsDecode1e6     180.30       149.99       0.83x
BenchmarkWordsEncode1e3     73.71        71.76        0.97x
BenchmarkWordsEncode1e4     86.43        98.96        1.14x
BenchmarkWordsEncode1e5     75.32        75.51        1.00x
BenchmarkWordsEncode1e6     99.22        87.46        0.88x


Comments

  1. Harrah's Casino Tunica - Mapyro
    Harrah's Casino Tunica, 경상북도 출장안마 Robinsonville, MS 38664 동두천 출장안마 - 진주 출장안마 Use this simple form to find hotels, motels, and other lodging near Harrah's 경주 출장샵 Casino Tunica in Robinsonville, MS. 청주 출장샵

    ReplyDelete

Post a Comment

Popular posts from this blog

Dampak Photoshop terhadap Identitas Diri

Dampak negatif Smartphone terhadap kesehatan

Mengenal Barcode