From c4b80acb3cf3b515d9043964df0acb7368d98d2f Mon Sep 17 00:00:00 2001 From: Chairuni Aulia Nusapati <chairuni.aulia.nusapati@gmail.com> Date: Fri, 19 Feb 2016 14:11:09 +0700 Subject: [PATCH] add laporan and some bug fixing --- Laporan.txt | 22 +++++++++++++++ omp_bucketSort | Bin 9676 -> 13772 bytes omp_bucketSort.c | 25 +++++++++++++----- .../Contents/Resources/DWARF/omp_bucketSort | Bin 11462 -> 11728 bytes 4 files changed, 41 insertions(+), 6 deletions(-) create mode 100644 Laporan.txt diff --git a/Laporan.txt b/Laporan.txt new file mode 100644 index 0000000..760aba4 --- /dev/null +++ b/Laporan.txt @@ -0,0 +1,22 @@ +Jumlah Processor | Jumlah Elemen | Waktu (s) +------------------------------------------------ + 1 | 50000 | 4.459711 + 1 | 100000 | 17.478811 + 1 | 200000 | 68.887656 + 1 | 400000 | 265.848395 + 4 | 50000 | 1.900707 + 4 | 100000 | 7.498740 + 4 | 200000 | 30.601998 + 4 | 400000 | 119.346230 + 8 | 50000 | 0.950886 + 8 | 100000 | 3.859002 + 8 | 200000 | 15.401171 + 8 | 400000 | 61.539769 + 16 | 50000 | 0.480937 + 16 | 100000 | 1.927204 + 16 | 200000 | 7.757075 + 16 | 400000 | 30.912405 + 32 | 50000 | 0.240996 + 32 | 100000 | 0.957297 + 32 | 200000 | 3.830962 + 32 | 400000 | 15.425040 diff --git a/omp_bucketSort b/omp_bucketSort index 40538c133d664a192acf04803d51ca38f0b6bf10..2356c590a7bf8b8ee19c517622eff45065f08a85 100755 GIT binary patch delta 2335 zcmZ`*eQXp(6yLp%-hqvG#TE**a;=3Hka9)k!%|xsN2l?Eg`}h*h8WKn5)#Cy35kUZ z9;Y4Gi)|-O084C0jK&aYXfY>LdTnaADVJDCEMoj<jOalXR19r`q5j_P+)@8<bGvWe z@4fe%H*em~Uh0|Do;Hye(EfV`+K;VY&{3diI`G>b+t^Xi{!?vUu?=z+&{{0l=~=W@ zq2tB!O}#e%LEHC?LYtvG<)6+)@;7~X{xaJbP)0v=m#oTJD(f628RMuj24Qqs#x}=d zS>;+Jla5W4HRb15PFg_Dch+W5uR{F+x$_?Syg~~D@)KvR9+20aPv-?~o-9#N*1O6# z0VNJEB!1azBa|ex8OUZx2kt`L%~hJV0<!E;dBRoedPLKfwr_ht&bTW4Z@kyJ>*&qe z<j29QuT-D?^g9`JS2)TS%AM|kJVenfD{=cRmfl1D-9B0DDRO9DS?yW8#DM**4>lfu ztQ}(>uL;i6wDc*D-0LZE40&X`rz+w_CBzq-XJ==*I1{wQWP>od$+{7$MJ<!_wRPNx zSysc(4R<$qxIx4@L@dk%`KFg+!w0NU0Y;gKXwpl*!c5=F!CXT;?jA+F08uO$p&6q| zj4h8#<iWa(rY?hZi3!9c?owu~8&MKbMj;GGr|$@M1jr#m{5(9wqiG#pZ8Q|IKPbkG z%|K8#HaKa6={exwq$9%Pjm`vB(4x@C&(Zj-6*hf~??GlOhq;(Uj!r(9c5uXCqE?fo z$Y-j68?4o6O7ZX|)73^$l%;f}_A3fwXq#B7<$IHjTD~;~8|6qlKSnA7ySW}2H?ZKt z20MIo`oIw}LUcSlVYu4jTvv+7ZHux|9nsaStL2=@hAG};NfJ{l><p5~08!O!_#lc& zIVnW2;V4T|N=+)IWJ}6m!|{EDMYa&Q5i4vE!#q4<7c#b=wgsAqjoW4WCR?@<9xt*N z5H^+fzN~kEMrN!6f|BEK5i!3F7Ai1gbdp=hI1abSY)E_?GAy5v5htGp->LDC7==Kq z<T^rPykUBh>le8gvs2P+KCj}#Bn{%rE$3-MFp(8ZWDSWiuzVd7NeJXkWXXo<s~NHh z9@b6y?7YIrz?@y5{=Z$1?FOgG`e~x6hq$=H2d_EM!~`2n{n!BRJ9RPJ2K`jui)d(S zgZ`GUOlG|$*FHnI!4h*jAwsP{oe+BwTwMIX2X8nGOR?GlRkS9X0}ZK()vVMojc6Dv z86HNZE+d%<tkmcvPLbcr#gBaO=3H9ruf2vyCT@aOkZC@}Mc8Gl2NUSQ1bWc-?h}+| zyr#;9w|=venz7HS${K_9&0Sb#T_}FdQaIb^#9f?yQPu~xKI-TT1CjZNPTv5WzJLdM zrrDan-RVZH=%An)1Ll@EUT0ZjBtEBkIbNK2O*xLT^s7YjmQB)Vxw#uH5;{=G>lo6t z)7TF$ll34zqD}2K*-82+OjWD$XE*jF%4sz9*o8(#$50=ODU@Ye3#KUIGxf~$gbJdH zR<n}_K8&&+YKkN(K~2%q@(yM}mfl&u+FG(q-M6N46?p&h?HYWE`wk}Y*qcP!zhH_4 zC76C6Pip}o@pDN0(_4{S;dIpBmfL;n=YMb;OUC8TksZEr#~rsk=iBw1`t)8`@^2;Y zD(O|9+XYG%DY-()ppuU(`J|FtN#e5;@yWWJ+|z+teNo41&8dC#Fdj2?$W_xiR(I-c zxpGIzs?zR(ksSolA}aC7{7rZrdYPrm6D5_~%NN=%Z!0*XQ&<^pKi(+1NZ*RbT%Bk) z6xp^o>_oevNS2na)tAZbrE9k-+Zb&3qbumY1MytJ?bGQDu=U?9{a%W6nEBwC$;FMa h4?Vj-(0i%$yzbr8SpULP+bUm{{^d)0PnRvx{{^wZ1poj5 delta 1952 zcmZuyYfKzf6rP!VfCQMK1))F#wAfN=VZl<sN|vgVUgFxcL@G8-)40aikZ6BM><`+l zZbrFYHd(mAv?_^d(m!>RBG{xNk6p513DTqx1NKiP)x>S_Q6F(he}L!A+yOLBGWWaZ zobNpDxp(f&cFevIra7AQ??>zX_`sI!X_6#^zQb)9x2N^q^X6n(N+KM(vv{q%uI(1u z+gbcQ*_)efac>B1JID_HyCa|fEI*N}TE<dg)IfIf8g~(IR?2MSv@m+W=rE08WgAwD zbxC&B8Xr--w$@fk8qaX7Yt!v48b7h2JuS2a8o%c7${K&*IGj`ZpXjChS?BIX&|-{q zKo6k(G?YqG6oeJPc0dK*0(jfYBxx65c{#u0^g4G+Qc>@*t$f8<p=G~(*Z*X==Gt&^ z-K1BYYvmqSg))@JPq-#>zzehNffv`&UIuIallSEnE1hmWn76G^f;}05W=JGd=Y}~6 zHC+Wrmb>{6d1Xqyo4X&c31Hjk*vYlEH9~J3HDQTRqXK6MeGsft&@?;Vt|iPc8B8P0 zl>^xc!{G10rW2aDiQMEzE=ig&XYa$z_6SDPkxLWF*FZ}rNyya*{!|NWFd(SOcn%qQ zgtbMO9-#~1^W`d5rw_6hBj6~5Bl8e{j0BT1s6WFgH8itgqW}QYqcT)%Skoy%y<}0F zEh+&B*aT{LENz1b;9~~zd@O`KAD!{Bex&%=08(1i>+?SP9YB<Xo>6=>+LF3Q<V8Xs zL6R0ab;#@j@lUnT_@OaO<D-v&{;iKD0j4aktq)sLKiY0{z$WT-?#a&!jN_(`nAN5J zCLK|Y?1>Y)M1oNVi6s>hTT)={;e<YmoaItN?~vGig)lwL+GdG=9s<oJoME&E^;sDj zHv;>_q(*(VYaXNsN*-wO<<u(GdlEXH1nK@KFfe^OKrWF`uGK!K4-)w{gH7os^e&10 zsxZC#a_W2!O^B?vJc;Q=ZsrV!j>?u|hWHnuo&_S$v9@lS3vs?DvESC?Ol_*3_!od0 zm_vUe{86(=Gs8iBT882d>Jhc)71#tg(mS1S=&Br&l+fe2faQHmkN;os(D0@#AX~@u zA$)y7Jr2?05UuN*i45>fE`c^V1_KFD{US8!LpY0g+F@1Hcmp%ifzxJU1K}&oNGOIb zfomq&f&LfJpBm>(nv0kb@FXLv4+^ykI18+V9>oC5uO{?Syrq^KM1Ki8gWEVt{4=aA zYBdy^Hv>H}!yH}@Qwd>$;JvAV>mJy`gZk+C&x3jt_kSE#kNY3(3d2`t*0)!`$Zr+x ztKJI%|4>iGUMK2>C=74Hp>FyKV&BBNlApq8mQC1IycvcoiYpw-trTx9IgnAg0vdP> zC+{oSt(<l8uS-sy6nFmvfqw~H6__sW`z->C1@02)5%{#g=LH@?9DcVnpz>yS=8(rL z=MQ8{4rxe*0dH1#2D1BQ<1v1`rgBIB7gNVkg{!E7!TwKmf?RIO{7Ow#>yY?;eIV4f zjBe%d8qhg>P(A{~W*NiQXIi!p*fDH<Cf`w8Evvk>w)&W`&44W%4g>zYFwPx#RT;l> vOa8@_H%i1?Oa-D{iwou|oYHgJ@O<sKobG$+sWYAXtKQ;TUE%Q1{zCa5<>NY# diff --git a/omp_bucketSort.c b/omp_bucketSort.c index 4a4baaa..28b9217 100644 --- a/omp_bucketSort.c +++ b/omp_bucketSort.c @@ -28,24 +28,37 @@ int main(int argc, char* argv[]){ fprintf(stderr, "usage: %s <number of threads> <number of elements>\n", argv[0]); exit(0); } - thread_count = atoi(argv[1]); n = atoi(argv[2]); // randomize rand_nums = create_rand_nums(n, n); + // determine interval + int range = n/thread_count; + + //find max num elements + int bucket_size[thread_count]; + for(int i = 0; i <thread_count; i++){ + bucket_size[i] = 0; + } + for (int i = 0; i < n; i++){ + int temp = rand_nums[i]; + bucket_size[temp/range] += 1; + } + int max_size = 0; + for (int i = 0; i < thread_count; i++){ + if (max_size < bucket_size[i]) max_size = bucket_size[i]; + } + //max buckets - int buckets[thread_count][n]; + int buckets[thread_count][max_size + 1]; //assign initial buckets capacity to buckets for(int i = 0; i <thread_count; i++){ buckets[i][0] = 0; } - - // determine interval - int range = n/thread_count; - + // assign to buckets for (int i = 0; i < n; i++){ int temp = rand_nums[i]; diff --git a/omp_bucketSort.dSYM/Contents/Resources/DWARF/omp_bucketSort b/omp_bucketSort.dSYM/Contents/Resources/DWARF/omp_bucketSort index 38133ddb6d823ea384d5b4280eb7048611255a44..8eeb163ed057eb68cacceaf0906b46604feb0e44 100644 GIT binary patch delta 2035 zcmZ9MZA=_R7{_PlmfgMM<(8vxFTC7~^f(Ug3dVA+P0CB4P}&NyHB@Op-b54-g<3>% z3w}CZlJ=O?RD(&4rNIPi6Kq1-nxY??TK#~DX-w5<G#bB{#zaY@G4XkJW)IT+Ff-5p z_kW(5*_qv&Pi}OdiRiDMKHKxoz54a#nqObsclFZu={@sOAU$7{-l%ab6cQp4LN?X( zyqg838m*KIZ7e3c*@RSU2`Lr?VI71r?zqBgZEmL1TFK9vXou$K@-0)oOe>`TyGuKu zjoPrCG27c_>yulh8rCnjdK-8W(P0hv1k9Ff<g(A@gw(+PkvpVD)}Dp!yICFiP23-r zxz8VBUu$K|qXb+n2RQl>w*ya0*hJ3)DsST`AW(V4L~DSW4|3GUlSp%=i8M9fS`uhR zpe2ru1M;`?tVL1KA2qX<0bM)9(Td2rR%N35fQAoq6cky*)h24w0<P2%j><(=DrTZ{ zfL0zrE3wtj^g4Axx96AeBo`#*Wf7wLnNKeZSx4FmvJ<ANDB?D#L!1smrUR=_=|AY( zj-E9J>*zuudnH)su-v-B=7Vmw5p=r#h1xl)MjjE1OO&ubgK-*?Suo_zlu4Dcrch@l ztSDlOp%%CrKZo`iR?&o5@zYSrVIxE-h4o49IE1$JN>T}#Arf2qe9}HnBoAkA8EO_X z?;X>6#!xFT40D<?)EI`9I%LY}`$<LJi*YT-pBRSPgmI$W<lh2s$M{IMS?yL*?c5fw zCv%Ts*n!!3qiz_&;GF31LSP>uQk2)eZjd|+{U$7Blv`rlvSt|0_pNNvt0!=VI5+&2 zgn9lDB<kVwHHsn+bI)a%XUfabCD9KG%cI<~0u~F+`nYx3v=~IH=bmN5c~xYO3JYIK z1Lxo1Qc{B46#bWCo&(%-!643tVqX7-=<$v8b9~-#9u(?FqBrc%5ov(qMFU=@tUUp( z0~I_HeK%_9IYZ%E)0XyAQW5m`q(buh@U=<SHA;zp)jFi#fgG0|ehZQ<y=LU{^S%e7 zHX*^3HY7CNscs!DO&@l4i3>R|D%l5!bQG6G(<khMnelP^RA$_)&fp@BaTokq3g#fz zajG2?ND?>~eMsYb!C+S*ZqRIC>*y@faJ}x+=+DMVlHE2PfDVS_JNEj{b^IO=g=2=| zrJ9%8Jv8E>4lfOQsMkjeeAMNmvmVs*ixeum6`JS6$m^kjLM~{<R7HnEU4V7VRzh!6 z)9T++ay+!eL%Te*eh1IZDW#x6J$56USDE9bd&3l3zo~(o5V?V^8a-Z`%{Ied7#9@W z1iS+BvTlu+GTJGP)2-HG7q@w=@rPTQZjJv|c`nws#+w=K6x$yureT?NM`DF|k;eK) z#^b#&j7{`DGaj!YPMN(IDMiEeNS6ywA&zXYZ>q0%GG4oTb!TO@6nd#|e0YfTpB#98 zXsUN|WM&A;O!EO3Cs|K)SJ56aesXMR^nnuWgXkMk^QOW=aS8a~pBPW~iWw1N9zE(Z z>#EuxflrK}6K)H^JzxCzZAbr`zZ|WZOJz6z_u5wjfwQwc_R&T5Y1LyaRNZ1;I;@8~ PC?Mo<DO+a))dT+np(;Qg delta 1768 zcmZ9MTTEP46o&WSGn~sXm%~t*nZu<sW9=}*Ffhoa6=N-_fCf8=L29wV0mgDEQ*5DD zV&)VR;-pOs#~mAEc+i@tF*Su!6B2!(O{|USLz^_3m}sJX@xcf6!8AsrYhMPMo`-ez zTHn9cUi)&+t>No0F4r60p`XT*%jwV7Yuc{u^W7e>_bk$%Nws|^>8e!`!U&;h#a;~1 z2yWIqBG5}4odG(F)1^R>Mj)^W0k2SeLDP-^HAou!Xcx(7J`ujb!>c5Y4f+GgfK51< zUEuaxZcS$o4%1O*PpDZWAp?3~PncVD-A%7KJ8(1o+nK>>`b-(K@0VpNT7-VmA#^*V z^tM(<gG$(6Y!m1cwj6khk8m^rsHsDsutZHUjy3>g_6U>}Nhnj#k*0?Is}e0pv?|ac zK#9E~>n&L@5$9Q-0$O`apo=nVEy2+}Ku0<SipZ=Z4IK4qVSnLqfp*EPLXxBR09|+h zT}ZB9HQLp8486iFlKhb5EknrgQPZf4mX5Rs!akVlvOMBvneRgAw6T8J_|drU=;{7Q zJE>La>ydU>NxkHxi;)1m74i9Jod~&A4YkVVI^6V+NQ&efG!hMLl_`2?SG0f2y{yue z=u>bteu;KkrJ^0O<CmdQmLR0mLVq}r0@q>REGSX#GUBi|3wj>mpkOPOTE<xDJ1+ge zQe(`G9R;b=K4U3r6Z4yd`k#W@#@r`|x%zjjpmyHp|61_uV{R8yd*9Y!2!pTX`%7^2 zNrV%k)>jttelO8k*gYowPfA*ZWW(~^m5K$aP<udv9~JzbRe*WUOLRxRqtH5=XRi=l zv5>E~T-3iR-wY25ylVNLlhI2hI)(5Hf?l+sE2lOH*2N-AP}_j-0rsY7DTXD6%a(#F z`dDMQbPz@PwQqtp1mBdu4-9tL8<t0Ga0~d_FywSIK<s{Xd+UhZ=NpnIx+n|jV+eP% z7Kr_lJ}$==u@C8UTi}42V@>o3SuaAB)8HFysvT@99AlG_hc&Sn<~+n!zzr;u39B^L zZeW4Q%UL0;J5Iw-1bl=(0!z>p7R7)4=|OaG_Zqw3TCCA>g@_g+dXUryiOVFBAPJeI z(j*@elSON)6ygjh#9KrBCUFA|lHMR`-yy>8S{4IcT<WxH;;JTkh_vq}?hx6@A@Eko zYq#qShai{!7Q0auf{&Fw1f4QUW3!A-)tlX>MAci8*R;~OZaZd_##736snU2_p^5k| zGU=fG@y1qm7iO}P`P9hqnc0z7@~LJt09!XVaUz!;9~nD7pP%C;PVt7=5E9qoLw>fw zDV8&yoy(4#Or_K7W+I6_qw{0axw(_*L^gjkM<*JZs#;NgekOP90X6-+;jD{aH>kNp z=>BAti=P*`0}h%^K2Z-dAo#f;wlKDkk1w5fjh?&v{9*mrO7odw`GJ4myg3$r_YL|@ a@*uw??08vUl?WZg<p!;2e44)6IPyP0c@T{N -- GitLab