From 749228dde5025b2da1ae27a15b25a4bc7a2c31fa Mon Sep 17 00:00:00 2001 From: Peter Taoussanis Date: Mon, 3 Jun 2013 16:42:49 +0700 Subject: [PATCH] Update benchmarks --- benchmarks/chart1.png | Bin 4825 -> 13998 bytes benchmarks/chart2.png | Bin 4029 -> 9909 bytes src/taoensso/nippy/benchmarks.clj | 29 ++++++++++++++++++----------- 3 files changed, 18 insertions(+), 11 deletions(-) diff --git a/benchmarks/chart1.png b/benchmarks/chart1.png index f32eca4eece49fc4d2e5cfd59ebe697df93798cf..02ce9a1b7ab283e6880e57d0c5ad9f680920badc 100644 GIT binary patch literal 13998 zcmeHu1yI}Hwr-$BN?V*3cc)l^Lh<76?vzpp?hc{2Q-T&P?ocE_0~BqcKyh~~uEFI7 z{^y=^=DsU)-CXX=ASdM4w|LhlFjf#MVytU)AfgnNc?1CXf4+Y}^&C-%5hIEqZbb1v z)&JXK`6_uY)qg8X>|w++$~>fdp&!>{8g6B&$*mOo*t_z_aN4}@O`h?x7TA4ye;Ne} zp$GE4=4tC@t(cB{tFdEO8Lwz_6b%GZGgX>^#l zf1=_>{%|7gR4tmfjQL%YAg&-Hp6WA|#^odNFimF5(9d+bl;ZD4@mUg)iQ338#h-{1 zj8djP`@lqwk%((b6#jdOPn?+n(kA-@X-qE1!8nj^+jHLi_+U%NA~~JvtS2Y0I6mtQ z52Uu1n+F2oJyk(rOO{vj70-_-u`12$3J$%fmi9tJED!*2`-wCD0%WNAPV#1{qd#%D zeRQ!3k9Rz8HY*mxQ&tyDew)GWo#+10c2WFod+Ig_Z97YYV$-TTF>j;?wT15^s}byw zvJphbuqi8CnOv5@JKZuhrF(NP9l+MsRxKI4@FRrGy>fI@sFNx>V!G1Xiq}tMYRU$# zchSsjU7CO8JF^JcX5Kfa`bF^45R3`=FSM+$RyB6Vxf&AF zHFP&!f%&sTG50Oo$fGA*l(*^P4lh1LdunbS2X_pq&&{DBuR}=i_ehi>V|*`nE`aafd)vV8mIT3Drmbx8c*S61huhh7ktuaPvAW1IUP!6A)50SfZISUOpIH|2u zfw|A=#ff>(I)(Ou4e+KDf4em{-(t9fYjZPBAU^u` zy>yEMUtR#5fWkAXHZkA{Y9Mr>awCfKcw}U1BM|z5wEJz|QbqKh=H;!%{*#HHF@fF% zsO)+yYBy7siSi{vo(}H&qvh;(m6lbF$sKfd@)uC@bPipqN@H4+_P#gPsoNw!WaLGW&UmN+p5 z$ou9>eq%sUS9?$wjBoYU`*2&_>mz6|mW*G3&$aZdg?3kH_G&jf;z&CGe!mC5r;B9P zMfD9j!qMdW)I`^y99{)xd^8X}an4w1h&b_HL`bG}e1>&{j}cq)#O^ri{CKAI(7>#o z5nJ8FE;Fe1_1GTf&ugj>R_4e@HmD75y;1?q7L;S-^QaD^8XTf#5)|eUuUS=Z6!8)#3i^ zKP|&j-{2mdxvr&sC8sI7_(_+kF(2~|F4DrKS|doi7f>?&Dol(+7@#N0IT22p>keX)I7kqqZvcx@FMRCv+;`9qYcU$=JB{H3>0j z=je|kQ`(-5a(}DJl+Pz;Q`4MMvsWw-y`L$L#Gos_dx!!6K9&N%&NNa2>2d0kNO^6F zzwu{T?J3AF#Wj5T+;KkBZQS(G%1k2kCkpFog2F(#m+VYn z1t=OR#^L5b5XMKfjX?v?YY!o4a>)!hyl4SgcYxa4d_xow3d?s^h{tW_&k&`=y^nh+ujKC)SHMn`P9#HGB(k*c~UH&!#@Yw z(9*p06xYZDm+u&Q&t}k$>^|-k*cac+aNa+AG+^LBvB~lvyAR3~+rsJY6t0#BFw6&o z2H^j7$T;p9gPRgu#eDk}?p+yGub9ztrZPOH&eGL5`p@>IGF}Vx)#mE{c9om+uoqr1 z@Qx$6bW{E7+(af@b`yODD=a(M&gf?R-V=i(#Pl}fF$kvBe}NC=^51>lAtMwKDwbKf za7td2O(;r8w`eN+v8-_v!z#Y;D&pSv1KKQ40%SEXa%5NKk1ib>*cItvNi;uygItNC z@*)i5*e>_Ar;D>{#|tT-s=@-smNc>!7f@-C3|;FAF+cj>HlaFOap&wq98)>EgJN$a zt8KsX1^R0`oHd%A%eJf_K6v!bcU4x^%bQi60X$ui-ys%vPeTBNSwE`Rn2lMrN!GyZ z$ql!*o<#Y>HAxm@Hw6ip0c%F_cG`K4PVovWDpr?0x8dcI9J<9CJ}G5|hJC*cf76h? zc-R274QcQt*ylB=ywOHIvu2aUX_o_O^FBOAq5O-{#5jl1x=`P*<*HE|o!4_Qh3^Cn z;l$?kz@;Q|WTU_2=m+BVf^iYUm3?>h=>vm5Wa%&;H5WCujx9M_uW=@njTIz+(c+V98{>zaR#^&E0s5~n{0ynC4 zw{jiE?Jk7MB!k<`L`r??>@hSeVu>|gn!Khn+ThM1AF^=;A)miV|JKimYO0WZI+|ve zG|j#}>tzS!_Bfe1coUMk6`Z}A(NJJVXm|C+D5fX!^@#!*eoN~;q66^3TFiTI6Pn57 zyylCovs6J-2`)Icpaf{MnQgiUkFDiF_<88-& z3m88Hn9bASl*W8v)IS=tmZ|k7+iZ*LU=9w4v^*TK=;=w-UWezIDi#s@!%hK<6sOxM zh`JyoLbO{}tf$TLdN2F$oiE4cy{S;&bJKqmJ5}zXZQ*%9!k(;##_2(b)hOa`F^3q% zier<<6raG|Q0QA4si~X09v}M5s z9%|XBZ^$ZEACvrLzWl~A>NiMLf9Z2x^1E!#-!#x&&)e8&sVUCV#Ew3Ww zO6~9Gz0NcBva`qeDugaGWDSbA^(lHF0lKHvgO`sMI9Yg-gXLBn`&T;fucuWP_xXDB zwBJ#YTC!HcIV;xczF6X-C4RhgBz^hoC7F4XT{iJ8;kjgo)a8@=Wr?QBIk}(Rnonf( zOHFK`nS(qE^PB9-zh&iHdRO`l+hy%|y1nLGsN8W$k_2i&vV(^cjcUG4`x&HEjK8w7 zwf~vfFBN!vVEeW{-Ev8wZuMhUg5bn>z;Jjw$K1)pDRm)-DkJS*I&AhSz(_FtOYVoW5H%Tdcac^ z+8^D>yT|Iae$(4c8cx|LhdO$;zO@|n%2%bcVD7h*%u)>SF<*pKXhr0oOoeCerYL#) zT@=zrbiXs;u*sWvn00)(RH5O8%q2HW{o}B1=O3&r^%JnVa5LX&o~jGakTx+-Yinx3 zv<;lAP-h$BUUTisW8}ScVog6?kn7lM3LN3Z`|D7_LlG|1Lbh^VyQ{SM@vX-4dxt|Y zLwH@&aV*gxS!%ZBF5^vnN%&e#?)sV1y{*OO(RSm!uZ?+zyt*yN3_)$?W@!%#0vFsB zl%gHeev#F6u{$4VO@?$2Cr7Qx{4De=DOcQ3Iy@-D4-RCEl6NfsYD>t%K<5r*{_;|( zcDxxhQr9Z4PLyjL-wIVi1G`zHh<~2HcU^$bv_G9}ud`P~rbQV>8d}KicBtp42FVZD z6n$)28IFg;-=r9ZqD|;6?Pa>qWa&3eJUE*A^3t?l9|Udor@`GYP@Wz*F>y7jC1Ict zY@{#s^ru6rm8KW(gq~K_O$!^-vqn5!FRfI+$nZBc+Z2~K^J;f)KF4ehQR6fZVGTfy zHN^lvXYO0|RVb=Qk7K}ESuW?#n=!nVKKJm|-THN^&4G2V50}8N&(ob&%4q2d6Xog; z1?A(@+-Ztez1M^BY~QavjfppQDzm-%%Z~i}y3?g9S%IU^ywuGVZu8b;bL-w&xGo9q zy0?gs$?mB_D0S_ACQ7Laj)K?gGRoR+Bh7)&SF#K}2D79`X8QEZD5qRS?vBD+I0OFj zU#q1rUA0qh@Le`~@vSoOl!+zR0^DcAD=XOaKWPhx(T=e%=g`S^Z6Umo(%G?nfL7fM zkZjF;-bmgJX6Sg5MRDNA{PrpN==|#OT3z&)TK5;p<*wEn0{OPr5jp&{3?bQ{ zK*4ktGnB(!$)-K4)4C#}km%#@zgWi>&g{~<(uMmH?Y%_yJ)z+57n?wr%-}z;_%q)A zYOS?jBWTU;wz5*CB3aR>S<$#Nr*7LKAW|vo@u6-bpX>`(Jfia6&Aai^t1IuDj{tvT zqfOoOB_jj}Zv770tz7jHPW})DVQMYd6!i5lO)@{}>E5nu9{Kgih=8-o8#^u zNn0P?XAS%}z8#R=W8gmryMNCx{3EaM->s%EEgLivxtYD_>%(F>RP)_#O6w@!JyrHT zRMXPS^y7SP+*|{%?=Q|pOpOlQI;)83x8HMHLz9*cae^EzuTJiUj`5v1oG$;GR-$qD zL2zziD-vgI`-)bX1=w0CUgS)4#X5I_^-krls0B97nRI@HFG2+3)i9M9#;D49nCoV5 z^jLm)MObvd8n?N3WEv!Fd3lRho6XnL-IkuB>bS#8hQu8?c)_+0R2MQdEnix`hmA8fxx<2jg@g=N3Jrsla+e{xe5XnL$P0Dh}wk zn%6u~+`+j<$Jf*)u~`xlLV9}a%*r)Z`58>q;g|?MK$*vse&efyH8 zLm~tpUaJa5EMtATurNm0z({9mDvR%KZg?wEubdbs`c)+8clT(BbS!ySEBSAV=0SH_ zz@Pp7SSVGVtjL}Kk)zY%ho$v{*@5-Io{12vP-7tZ-D%p>9_pM*`>z~Af;F(y#bkML z-yUi=XCQ9nRzKYZw7~r&0PVH{+ff=B;3J({rgmxP<+knkf;G5hKCEc8`sgMjjBh^q zF0FXKD}GX!JF#!fvUt1%=fcN*czyIfaT3Hm6@O(tlUBomr7!O5-E@7OQ14Jph|{FM zX33O{SwI_J%W-h6Y^u4UqNO)oCP~_#Z>yAnfX}wvxjbKs$SP>fTi3VUJ!sBpPn~D3 zaC%w^w-mwi*?~aY<@dHOK1C{eMmjU)l6I@@RoprDKHsdZymwp(dFSFKrak|2- zVK{M6P8c3yF?>fmQ#Bq>Gxstx(k)MqorANjxp)WMda|v6Zp-WIel(bC5xLIBhFgk8 zHfIG4FZApMgkQtqiSe?vys%RL{n$>D!>O8c_Q&_y4!25@1iKV&ilhy5D=us5!u0Hw zfbPyf1oC|P`~tyO#E3;@Xb`?l zWwnAg?}=JGEVdnMd0p=Tg-Y>epsVU4dQPf^kDp)dkJV1uuc+B;rpQN$Sp_}xFV9FC zvg6`b8YbsbD4H4wLQj(_m0sELHpaw8VXhHhv2d-_$&bA$R6^)CW!_IeUE`@(Mx&Yf zD|o)V_U-k`@E3#5fn_5hYVyHBTWS3DaV>j;hNJ$iVH57ce6<&Avm943w*pYaqqy*1rFCdX$82F|5 z0$h~5pGbSDy-*q}TdjdGHm>Y}lQR_mR zxemVnDz$gbs#e2#EX=1x0O-7RpFVJmIjr*DBZ7s?ARXK%21(m;gY!jQUinkniRDV)DwkT|*Jy%ab*45ZA~2 zwaulG&=B_dDKFAp#S8=$5|vSBnj=b^ikj#fw>Mgd4zuFX`wvhp=7G5s-@05KO?LK* zh!kgLE!aw^PZR&0pq=+8%JXU^(>vpkjGS#D{5%5e5fiZAaMY>BTrZkX8RdH2ZHc67 zO!S@g;RHKxc&(@m79YOX9wkrMwpAi~XdX{WMwpdyb+K1IG?CzPGtjBQis3Bp+_RET zD@&cj_c=Cc9zjlSoahkfau2kN+D)=vN=ARe3#1U5y349uw$rn?s$e`Auh*>MdreEd zH8kv{>Y1v^va5h2>vA8+P${1F!Ac|7W)U``K8K?Wwv>zKQz_M?$%!*RjCfP<<{o+$ zd42qDv75(&$N#~#7O=!pFJWJT!(^P5>-?sBt+0A=s#-5PE{DEZ4%ddS zgHH<<_5(Il4_;(tIUTsYOcnFF62Jxc@5`u{ON`u3U;mo@HM{IaI%)hROP6JWCbGb( zftYnnkB2&IUuim>pY$GW>2FT<)cSgd>n0khbF3ZgfNPO0+^o-5Y25sDD!a4)31n6f zVnBdQZ6QN+(w>;TM8k$St1dgr?BOc+Ki<#({pxedduRN2!8a2C819p2{|$Qe zcj+Q_h)~Mqjo4+y$qRYVH80}q9cDf4KJv7xo!SvEWB%1YT__%DBHjcWd8Bmt(X{r z1>MQJMIg>XvE>)n=&U*|vOg#q~u`K379nMi<5{6I1cMi=wr`X|sE4_=EG* zJ^67f96;P+Qs(_HF+{)5qlyJ#iSRdtF@H4`7H+yc9yG>usSD}7y!4aU1-_64 zOGr3UQn12&VK`T7a^v&(`!Da6Oz~zOUbQRb@;v%1U-h5R0ukd~p&&fvLY&sn#!ELE zCmMJA^r*1EMPk|zPDr87E2*Z%gO%gfL#=CNcn`^;FDE}P_<0};P4N;aSF5}ci4(j=)?os zgNBQ}xTA)p1IE4Xz^+r1W$_RTM>CHs1rTC30Kfr^QuMR*T~oiWj#)>!Y;vGqKI^*m z(SB=2$q$!Hq5CFn7beP><$xel%4Zf)N<%38fK<*c$CTG7Pe^?7ayV>b+9xZ{HG=ln`5wq>f+Vkuu zc28XO+ABtNN8PiFfpRv%Y-O|{yFB)(Wrf6=0(yeu?|?)SAW+7Z_5 zS8t$gb8`HW zisV!6cW-(IzVkF9gJ)tg<&5qNyAt;`l8mkGP`FR z+mzl%jdh`NwciAHj*;mxhoOp+$xG}E!V9LY!+)$aFCWhC5$qmc@a3I@&&+ID8f~8} zW@PZ67-EMl1N^>6OASlaTwuwx({|OE#4pRx%5t+C)|gfq4S76?pp`Y?8seCu9I|XB zyCQhb$4lz$o#n8!yL&aC$Sc~42~g?l(a{lKYgL)|pr)qIxlX|K9i98y7#JmOSu@N( z>{w$fxACT_?}k@6vq+clTaW;KVY1Df%a6EV(z51o$)b`}Xl3zm`Ch^S*!Oe6 zqVHmVvtbyPj<_L0bbAdfG~;81>PDliJvDVKsTp&0ve>DY_%9vX_&7cN`oqVQ#u4%K zx!EA5BVmXsN7OuB=;RZx@M^=auNeN&^|rTnN3?f$_xAqsLFVGB9LTdAX=^JekH3}1 z(@mld_Bq`E_*YBoSEKomcYI87HI~%dAeNa-f5lW^AI4*_wQdO3%4;e+)t58p4=Ndp zWsvg}AbZ-%RsQVO#wH61z&Knn==9R}MqhDz&rdbK(T*09);C($$6nw|253vn;9mt& zhAabau~0*&XNv_w)0nM_j!@Q>%IydXw(Lrr5tpwU0~t9fIVsE-J);ec;u+pC3FiG^ zeJM&>+B^~X(d|#~a!-r%mpP1EPeQ?^x)>%i!O$8#ha^u0tpaILsA@y3AX|bfevWpz zn=D(Op8aA5xs244u|IlFB8o)qNN2UP{>75WgId;rt`0A!Pm~S1FPJ#o$V`iTD>{ao zhF#F)om;K7H?F3g3swyvE+@7f#-!r*7rQqClRmCm`G+m~f~MhONU@2I z=d7yulI*2oP4BQ{3JZK$Ka3^3zM|Eb!*zIV1z9$*ls*uXp1x(!<|g~}Q`apf<7WcM zSMp8{Uvdadz#?je@|nbtP$bq8-Z`#|L0g70N3w%-ogsgTi_6}hKQe1E0~rD@x@l`t zUww$nNz_W!)~&wb#19k(fiLc8(7`eyC|z&4;WTjtDcZmdSn0``Ked1N7vj{bglZb4 z=aH}3P_U#3wx}qcuAAej)_tMSgy7H}S!yGttP6Qi3)yT&pzdcdiHjsgrn>4bn|TTQ z-Y(hHWi&0WP8wCcj;yr<8f= zTecCGR9&e9Eyt;XJk5|5ZKWAX84I0LU$klo#8RRMTu-G?${c6D37Y1ZKH+Zzd+-rtpP0RDs4}b^dA3o?Xwj_Wbi_V(OZpBwh}~`Pg^VNH(?iAC>tA{cYp6kNqX}nhn)h`gX`2F6#vRrQw+6a^T$=v`K(&;?x=qnr5uvP zF%AG`)IHM~Z`6^BJZ9a>vZO76PSyIod@cwZQ=`(S@)sfuAHK3t#9_xxm&4lVDWADm zUGLGuG{L*j>d{-yevP@sKu5~)38|UGL`o~DaD5WKA6z`@(VD^Y0ZBUSL03bCt~gk5WjIty@LRX7GF+>%lu*r_ z%_w4MIl2&SXHUDmSbA@xQBB9O*x>JhDF7Vvr(K)GW8UqfucjDe>22U@IjZoIg2V-j zfo5NPW&j2j)DK#`2)UiK)In0&uESsbCZa5{SYXcAvM;b(meWI^ts2#1)L_sOq5iE} z_tE0*nPV_s;T#bg(i}hQ8k9hOgh0ib>Dhh+wpjI}d1@!Vqi;eZ)A5pjVh2U0kiL@W z6+6hP)vRX%w+KRhu{8eqIPO>nfcD8Q)K65@-4G1gdNTxJi`~T`w(L)%tP(xc!{Xdn z+w3r}sX5ci2IqgNUc=QDqeEgCt%2mf9(@wBIc+R#R#+0-$id26FCSI?bvhoWv0&S8 zv)=!e8LS(|@MurgBSFm;Y2ElZ(M#l}x|^d#3k|xaG`ECLR5eY?2Q5J70~5af9daz+ zB}md}p(~8-K80EKTAZAFX2hPvZZY-K)2g?G=t-`jG*1{ymVvLlKdlM#HD|=U^fA%B z>PbY|_FS=Jsw-zCZqxqm5czRCXek<I-!v- zyVgv8TWbiT$UJeQHdYZr2CSasu*LkCb=g`Ax3@B1@@CvRCIC%I*>%X~;`2QhA7Z!HM1^2xVbHlvmeI58< z`KGt5EI|q&#p3SMr~StfA-LOu7JWUy`eWOAP7181soRs`B%%@9ZpE^1!>L)x*55uA zjf7wp`(4@q`2&1!lbQ(J_wQDun{BSNr2&Bbo#Arac8+Ig2c+~Eyu8|^?EYpYRu#Ak zm^_l28!89b-pH$?9!U5_!bq6XnucU6^6k5J4nliJcyV`mvSksFS<^BlCu94UCRJ6le)jPW&Ubqgmln7BD0l%5U;1- zRPU98TTm&}UM$yDq3Vu9^5VEgwC|7nyptzle}3wl&_PbwQYZTf9`7&LESy246$fM+lI@Lg=j$d*2*v;@l``sd`WgV8XPJLCEWnndI= z{_?N}%WttWJ(4wW*x^et?8onZSI#|thy7T|_iU8h*1Ie+N+kf6k-XkAVO+pv01WSD zS99UX8F*w`vanq3D+kKLd0_%Km(SaU zq9YUO0(5g*+mmyNlJ&->wA0+1Qt?Az|4dPo4j#RRV>jOS_;xsl&sbG~l>qT>24@oOH+yJQ+er=vIzS!ddJOw(T{i?wC561C%q0>~Rr73O~gaIkk1_31(JPZE0F6N3UMs8PxVT1-6J($KYm zahY3S3i(f8^$)u>%gUpin>7g07JLv$-2u==RF_WHL3Y!>9vlH&q8@**&E!uITwn=eSR7X z=j;LoXL31n>h}v;LcN33@_$CC z*J7ndOzH_H|`(2%I`??krLcx7_m^U3+#L(}w%Agg6aYBVv$e2Cf zPy{1t99fv}ZYqJK@UCdlqZ1GM?`V8==e-bAt5S2X7;H4vPl71)3Sg3w>Zs{eT z!~Z#mzDDJF^3(F-dCzk5PfXc=gW^Y=3eIkFBySqrJuuU=vWP@*5Pdrw4kaiBlm zf1ovOjz|W|ZFF19%MPmbjrIJq{00W36+?`;_xMWQ=bZXEGG)hhfmOviv{sz_7It?V0+^r(m`4RS<5`m4rsIp6X&n zI^FO&Ph~Bm%t3DFw^FS^7Iz$NIEA5G^(-HKT^!FM;TyLA(wlwXqS4HLkod>7?mZf- z+3ogIf1Z$NVX12$sB^+1+=*sTy4?cE@)#JoFlL_gw*P8x|K+#dua<8~ z>BMXs{Q@Q(Pk&nuR!&mGLID`>qEgC*he0Am*d&|kD#CO!YmVY8^x%{iweX94ecJI(*u|pt3~C82 zqv8iah3;7c<-l&(zDu+h?aIZ;K{hoE;ym84_x{!rt!i_S0rj2%nfI=wAxT-95Rt}M3d7hkmKh;q9UnZ*Y(UFb7szUKHtyhywB^L?|0_KJzdS?N6#K* zVPQEAx~s0w!omh+VPSPYe1Pfc1crq&9ntr+4K;*>goK5KMMXu$#KgqK#V=mGc0|Ej9 z0|SGCf}TBl791QL5)u*`8X6WB_Wb$t7cX9fhlfW*M7(_YGBPqUDk|#Lt5?y{(HIN{ zi^ayo#Ncqa*x1;(xVYD^U&qJCCnO{!CMG5&B_$^(r=+B$rl!7m^XBc_w`pl$t*vcsZ5RsU0vPX-Cw_c?dj?1 z?d|RB>-(m7^4qs>{r&v|0|SGDgF{0@!^6YhzkeSY85tcN9UB`PA0MaF=@SzZlarG_ ze*Bo4nwp-To|&1Motji%UyO%gf6vD=Vw3t7~g(>+9=3fBxLq z*x20M+}hgO-rnAcXW7}=dDwEyo`vO)10Z!(L$BVM{*A}&sFa5J((f0c!6#U)R4?4( zJap#`EJSrwU!N>=Sm+b&7RPDm`x2pxLFW8*Ruxx}s$o1GtZ_j!jr;6ooW%r!yqb>L zh5l~KB9+m^(ZnzO*t17N=!^WH#eFfK#Rr{f&zw&Ush?`q`Q&xvF!Z1#8}A9yt`&mq zTJ@S;`#eBn*Rn?JS~lKYyBo+F@&B>_bNcJ%+9m_f?mYf2Tj2mJV4Vv|aeJ6oY!4m_ z-`sPI@7%_W<{H{c`-TE!VzB;LO#d&{aA-6EGzwS1*uY_oQIUh1D8f(v=*;c zMY^*8I7u??y8Mv4%ijkDhTV_zM~@w|2RI^q(F6y*WDmfAO>44iUAf# z*Y^ap#(}P6)Z276E5j0#uX$Q>5NcUL`e<1o8E?{yh1alk9XFPwPhm9A$9Z_fbWlJT z3dL4`{`*QkG&&zDr_93!7(jn?QpE5QV~gG1F76!JMEK2JX2iJ;*f5X42dxR`%yH5x zFqCt3>SqdG38sG14%=%sFB z5l~`@VcsXSK)@kllsReKTV%$|_*d6`Wrf!K_;hH>5sep(DD3XiGBF+#6a=y`EB7AO zD12$^?qZhOCE+)>e5Qx8@mTO-qecM>;%^%F-5NERZQR|xU>?X=;hhyKPaAML`2Tkd~KwaXE3C zm{`fC2W9}c1$^L3?~(Ar^t_r53>i@A!fG zT~E2dZo2;!O@DK<2WdZqRKCDCyszfIcKc%f)41CWV6IscVBN=WpY^{f1?WGMcSrJ& z0&qX%oU+WLxg}wQ8_rb{2<9}+x;&M=Il^pz!?@jBqC>ho%JZ=h(Zuh%&dGjwzb`Z= z+c3VF^ElD4w3Os&!zz7^q;FyWAiXsD%-Q`1fLU`W0`WA%SlshVDmAt`weK;~q@&7J zFRvW!{_bXJcZ>ven~2r5N4p!kauYpUo|(`^L8$euSa$3209>{(unnvwr z3ly2PNW^3x@jQAa&ToOs>+?sf(G^onIIotpGj3^h3InZr+#PXcvnu6U6yfULg zw<0a0n3ULb}(Z190^TLe zyyrh$A;!a-<3d8a2U>ytukh8m4n9!KwY6~C3S^0&q`!O~-~^9cGQ8CkEpk2n+EP$; z@f^NW3v(w4TQ0AuYhUl3+#D4InHp$7^%}R$Zd4d57h)egV%|y)cgf(mIgg7PEO*c` zOF02~gW@35lJ#%ICp=0V#18(RTxpos?Z`ek!-dBT;+YCB*Tb=TRPNx=ngDQ>ndqf=plUx1KHGb% zKx&Rdei+VVmCJleY&8wzV$Qyr8n0$GA9-ix^0-)6$%3cXS;EcTXwPF)Tken zW_)brpPJflLG(G5B)}w?QA<(!!+hdN6{Bc-2%UmNZ#M>xNxpc5Y@6gmOHxFXEIYh2 ziu(e|0a|%Sd zQkGvJ2S@~t=6fh7`;2^>-H144uC)9dDMJiXX8jKyumK?)wg^O_0*B`#H@Cz(v+irX zB7+t0G$~UN8|L#7Ju`Dd>SwrqF4f=Oh!>^|7c_{8Z(L=WqFXME{-J(eplEi@xdqQt zVpEYj%|e{u$-Qj}@)%Bw?gqLDwW6;ZaB%TKKb)azBLt%+R}sUnmQIy#TiO(b=L5TC z?Q3mLaj}a`_HK*+{G4-Kr;PXY3}0cJxU5~4$r@r#F+Bk!Of0Xz)1*yjUjf9~#$tJV zUNbsB0F%LXwlk{{>|EZHnD}^i1B^1sdet5HSOJi9+e3`|D@Q9dZ3Q*Mw|o#$5nAcf zgOZqSmuYTfGjb#GCSNgIQ;}2CFd}sh9P5AI-&KVa1nEcT?tDx+vU>ul9@|4#Ii;>+ z9nVNrA;gqyb91}E2oOi>Zv{p6Xlq)jxd22^=Fs^{aZuBW?PEeWLI8_ zc;{*#)no3Qe2M%hJ|s4wksMLfTGho%dIDd`tYT=(1q;eGYEjTNZek74`X{*`>S#Kk zcq6(WlFnrp;{KdADhfu2@>Dt7>J?>LCT)EXtI(@M-9Q}Qyr_NBsAgTSs-?vzcy`)~ z>Nh0}s>(Il+ik1kk&*?NI@(*;llgcee7WW}Ho4JpIBdCiJpBUkmTlr^!K>%IpopXW zF&+JR@Bfh>wOn&AKRa7N5Q0jL9arY*o_uX_zz9S7=xmq)CAia-#3ISe)G9@&1%mjw zV8_57d4gOgdFeb;RJzGkVtVhLrs)X>Ag`YT-Ksrz+8OZ^XOW8%P+b)FmeXE^uBGFT zE&gN69$UUvQrc?dG+&P<#>6{b2bCH=<$-Kpowqp9Wn{K$@=9OOu>)bYS}uUWKP{Pc zUknvXgGpU3rsffz5?jd;i;`1L8&N|U9~W1(xm3uDB&U@-De-MHi*Z7IHyy)v5JjC0 zXK%}kR>9!2bkA8ABZaUD?G*A&&7hG#eFi_JL_ZaYAEQ`>?3Pk@VvNm*17=})oy3TU z6Sep6^{}6L^CGnv)YkcQgrlY6bi(r>GOFeWAdj%oo?hYUnnFMgmfZ&i87K02N-lNK zYJJyJwh%w9=l-gVcKUIKTc8ZD&5R5~YDpCSAB-brq^+PI(4O})@0&dAj=k9w?_q_N1WX~plRp0HrV#>r~m2)^+eaoP9bOpmr*pI R!~DyN1*D;?o~H&2`d?E$BTN7Q diff --git a/benchmarks/chart2.png b/benchmarks/chart2.png index 3ceabc3d9be09d4770bbff0bc892264c7c8997d9..92a7dab469fd014c0c0875cc959c193076b126db 100644 GIT binary patch literal 9909 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 AA^-pY literal 4029 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 ngLh)0BYjZ+>h)pKY$@1g2z)k84YZdx8azA}2 diff --git a/src/taoensso/nippy/benchmarks.clj b/src/taoensso/nippy/benchmarks.clj index dcc6758..ea538f4 100644 --- a/src/taoensso/nippy/benchmarks.clj +++ b/src/taoensso/nippy/benchmarks.clj @@ -36,19 +36,26 @@ ;; :nippy {:freeze 3751, :thaw 4184, :round 7769}} ;; (float (/ 59545 7769)) = 7.6644354 - ;; Clojure 1.4.0, Nippy 1.0.0 + ;; Clojure 1.4.0, Nippy 1.0.0 (+ tagged-uuid, tagged-date) ;; {:reader {:freeze 22595, :thaw 31148, :round 54059} ;; :nippy {:freeze 3324, :thaw 3725, :round 6918}} ;; (float (/ 54059 6918)) = 7.814253 - ;;; Data size - (let [frozen (reader-freeze data)] (count (.getBytes frozen "UTF8"))) - (let [frozen (freeze-to-bytes data)] (count frozen)) - ;; 22788, 12224 + ;; Clojure 1.5.1, Nippy 1.2.1 (+ sorted-set, sorted-map) + ;; (def data (dissoc data :sorted-set :sorted-map)) + ;; {:reader {:freeze 15037, :thaw 27885, :round 43945}, + ;; :nippy {:freeze 3194, :thaw 4734, :round 8380}} + ;; (float (/ 43945 8380)) = 5.2440333 - ;;; Snappy implementations - (println (bench (roundtrip data))) - ;; No Snappy: 6163 6064 6042 6176 - ;; Snappy JNI: 6489 6446 6542 6412 - ;; Snappy native array copy: 6569 6419 6414 6590 - ) \ No newline at end of file +;;; Data size + (let [frozen (reader-freeze data)] (count (.getBytes frozen "UTF8"))) + (let [frozen (freeze-to-bytes data)] (count frozen)) + ;; 22955, 12402 + ;; (float (/ 22955 12402)) = 1.8509111 + +;;; Snappy implementations + (println (bench (roundtrip data))) + ;; No Snappy: 6163 6064 6042 6176 + ;; Snappy JNI: 6489 6446 6542 6412 + ;; Snappy native array copy: 6569 6419 6414 6590 + ) \ No newline at end of file