From 3f709159036363345896546e3b4c11591daa6019 Mon Sep 17 00:00:00 2001 From: NunoSempere Date: Sat, 22 Jul 2023 21:49:00 +0200 Subject: [PATCH] fix performance record, add global makefile. --- examples/01_one_sample/example | Bin 22024 -> 22216 bytes examples/01_one_sample/makefile | 2 +- examples/02_many_samples/example | Bin 22064 -> 22256 bytes examples/02_many_samples/makefile | 2 +- examples/03_gcc_nested_function/example | Bin 22088 -> 22272 bytes examples/03_gcc_nested_function/makefile | 2 +- examples/04_sample_from_cdf_simple/example | Bin 22176 -> 22360 bytes examples/04_sample_from_cdf_simple/makefile | 2 +- examples/05_sample_from_cdf_beta/makefile | 2 +- makefile | 8 ++++++++ 10 files changed, 13 insertions(+), 5 deletions(-) create mode 100644 makefile diff --git a/examples/01_one_sample/example b/examples/01_one_sample/example index 12177033f1f12cb54ab0c6bc2d8c6529ea072a0f..bc04f21ec8d9ec8805f8d5d2e1090528e2150aa9 100755 GIT binary patch delta 5751 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 LU5wK}&CLG>qu&Cg delta 3963 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 diff --git a/examples/01_one_sample/makefile b/examples/01_one_sample/makefile index 963cdac..ef385f7 100644 --- a/examples/01_one_sample/makefile +++ b/examples/01_one_sample/makefile @@ -48,6 +48,6 @@ profile-linux: echo "Requires perf, which depends on the kernel version, and might be in linux-tools package or similar" echo "Must be run as sudo" $(CC) $(SRC) $(MATH) -o $(OUTPUT) - sudo perf record $(OUTPUT) + sudo perf record ./$(OUTPUT) sudo perf report rm perf.data diff --git a/examples/02_many_samples/example b/examples/02_many_samples/example index bf35391cd66c98afc1fcfe50a7ef515a659d0670..423e7879c316ef232ae85194e2751984a440dc8d 100755 GIT binary patch delta 5643 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 PJ=c=CLS?g&ue|>Q;D{Ez delta 4061 zcmZ8k32+nF8GgHxY^{)yRtIb0Lz3|UrmW~74ox#Or48W-3P&QYgoKdS|LwkIsNT%( z_x|rc-oO98{dYI>MOyCJQhqc%_u6Nrz#JpvbY1CdC$Tgnh!_{o_GR%El8KO-{g0agjgDeWTo0$0T1N z36f#CYx@&DEjKn!+Ozg0fARcY`y+??SH1_E3{%}KX#tNMHRu-gEW@awLf8!-85H4N zb_TmKU)ZY7hHw^#b;bZ}H08tEP9vN#xM18E6n?4N{{X_qfUsG$jhXU=Bn+C?8GF|} zyb^3V2l7N>z$FaCNK7OL-pz4tW-=QBvMdo+rg}UcpWK7h%_Z-1EPK#%_9dEsd#TP9^WUJzc!j@dcv4oe=tdS(;gdMpJ z9)6=$GQCLCv65NfQm*3B*JS*SJG3$^Fe`aHzUtHmVY34LW^0~Nm9)*(BBtackT zb_jMOn>JfLdNPbp^7y$pp8$E1l4sS-)pH62Nr8xD&6{`!I}X*7GQ6xJle5EKVs4m6 z$Q4@F2$lAuD{ykFju4x-iIA(d;;&GCEK7bUOMW0r?#_}IWXa8tFZY7cQ6)V`DYZ>C z%_xSsjwQl0_?ct6Sd%09Qq`&S#cwE$Z0jvGw+)niA1*nn9Qzq__kSKg z5g7;t&@vr_yPRc0C3HHcbnnGWjSS=kR0wTEQ|jJv4)Y4i56GQG(W?c=I_?UV2~XQ9vxX=ia|Gg9R7>D`g1LM3b(iJx6>jcf~* zqmY(vQJP+XOa9eVbPohwb3B;>HK1C}t2TSy8I%!C$6Vq0q33BB$L%Tm?u{#3die(m-O8Fe z=Jrf7ZV2Hb#?q@8Vcul6BKnrY!AaALkA6kzg;#Cft?W|Ov?5Pk%-@!a_U`i@@J)Kq zQiUdL?caEKu<-3*%RM|;3;aTCxvkWg9z`X3 z;}i*Fscq_5dM|vT6c>G%k9T(*$)-}{O50~Cw*DdHFy*{MP?NvVVntV$#-@ChhGN~& zfHqB~W_D5csFrw9Q{a{SN^AcO%;QZwT{xHkd*L;>R{Wl5`~t>&b3pXfi6d@k@YRbS zT!*c`xnkbusCYp9zy&`4QkT<3$mliPY;Ey#uQN=KU4sFCb?6=J@@da?O4Xg14&W^P z$~8(?R^3^>Zhpa2F}b1*=z^GMbHPo2kGRVTD@*!ChZ8a-_XUnQ2>GFm>e{z)W(!=k zJ$sPtDyl#K4(_~W2lPz&vE^y($mroNa=@i2UKc_ARojw(+n$++ ziLy{vWbl(hGxhxI$Nm0{|;P_^tz%cg&E{OY*L_eg| zj`4jbDV>8DM2sS45JwQBrzmATyZ$t#tC)&+agNeg5ff=j#}UU7&mj6PU;um@r4UyjCNELC3(=RM z)Qa6YhUh~aLY#wWzf5T#d|6!~M8RL9nCAQ!<3Xrqif|IXTcdc6qnyG#^ub;dKgDAl z25X$5w?Cp3-%sjbnm^-l7&&~})WNvJc)WK9*M>4HV-P;7StKN&dWO@z3-tly*uW=* zbYW>mVCjqkcP|!luF7kgt*Chs;xh`0mSL$_91@x66AxP^nwuvOABwM{g%8GN6x6WQ zPoh+aMcjvTHW2vVP%&MGzoOY$*)0s6n>|4ir z9?EMUsbTfCUZive_s0j3G$A+V4vwjs@K}a?>>|8T+hE><(|$C8%k|FTSjDMai8jx<&Z;a-_~HJOiK9JuJkaeclG>4_l#6Dg|?W8lzsWS5WH@yA2XaA}W)EdH^k) zdNz;=B$Epr;TCMowlwuHX*zSq)?^E5AZ3Pi;Sszq4Dk3XWW0kCb+vr9cAl#_HP@@@l@V>@- z#TB)1rLhX*`6ruCxC#$Px; z?$+ev8jvHLxAVQDf6^Ue(LATPHpR7XaIfoXo;eV1Q9Nb1V_2RfE6*C(-J)y`qgEC@ z#GIvFh&;4s|{u6gw%a?yhGa|1ut#piQld$vNip{6F#6DrzctHblne$Oz9Q_HK&UyXsNN+^9 zIKP(L7xOq~e2(q-7RbKQF68mjDoLVHvpk1)gN<@cK~ntRYBA@h!4|L!JZ$-Msqzsky~ diff --git a/examples/02_many_samples/makefile b/examples/02_many_samples/makefile index 963cdac..ef385f7 100644 --- a/examples/02_many_samples/makefile +++ b/examples/02_many_samples/makefile @@ -48,6 +48,6 @@ profile-linux: echo "Requires perf, which depends on the kernel version, and might be in linux-tools package or similar" echo "Must be run as sudo" $(CC) $(SRC) $(MATH) -o $(OUTPUT) - sudo perf record $(OUTPUT) + sudo perf record ./$(OUTPUT) sudo perf report rm perf.data diff --git a/examples/03_gcc_nested_function/example b/examples/03_gcc_nested_function/example index f0affdeb846ae221bc79099ddf3396030d60806a..84e2593b4fc47f8d4ebe1585ddacd3600bde7f31 100755 GIT binary patch delta 5730 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 Mr*Nq}U7DBvckCr5U;qFB delta 4018 zcmZ8k3vg7`89sL($!eNUbpR|UTtP(KtP!#d@JNKT;q&YM9eCPlE z|NQ5_|9RYV+h3H9{zdA^boyOPEfpHD&ZWI`pS9YpnrQF+IGA?Dp$S(UW5EhmvOd-2QA@AQJr?EwS$I?1yUcKFv`+< zye7LTQ`)1p4x-gXTTMaQY0jkfMiZSjx@p7|lAcuU@299KDD75lOtx z(?YhCmof~@h#`#3#LO&(-b-=q<}xo5SRM#ZQw5&w(_4|+B9hF zLFxmWw4{6WU^w3|{HLNlg)*#iM!IIM)(MiVGSykrGp0^pM<{HS2i6pfr|h@qSSlAX zc2UWzqPh0B)}wK~oH3iPnz2i^?C&9Onj~+SB;PejZk{ABnIzXxrlXBa&O+%?Dt4}% zaw-es&8g0{C+E;(&UuEcR2p`=yltS5@LYux$*~_5rEXtauBD+n@27O$S?D~(nOpv| z{diq>BnZo7h;DM_Npq>uHLLkqylh=}Mo@*wPM9j5{RNZc^ zKJ#YYemJqss*Kuv?L1L$2!wr?YG3*wz3rMQ)lkxvJ+}rF+di+k?x9EyZ`O64*_K|n zFOm--X}zu}$@LiWALgtD6mpk&$7iSx)qGyE*)vW<2AW5y!!29i5z-*_xmQaU=$d3l@=&8JtU&C7o4dqp|-s?E2Dzp5Hm-9uxU`%+==`O-`N zX+KFTgb5$}4_@Icdc)aTuW(jNzmwa{gTbmkZVc~ zL5bdIf-vRUW)CNyrElfztj{tryCWd0b4@L_uM&LxBj6Bn#t|yYT$+}St~`ugnLG?R zeMcp1s&g&;r531`c&S-*ICE}#=T*e<2C8$f^pJh#WxAaGzQOb@4g1T;;4e1}dZ^N0 zVff?oQUw6>8T6NIt3I_o zvJioCR~H@R&;6}og@gKYpU!y=r;ly#u;$f2^sVN#6s+boVyCTn_obf#uM(bq8;#}7 z%un7RI&F;I6_8l`nbviBp%3B;in{+aj< zo)PLTaz)-bp(yx5sfBA^#&Z-LcAHu_cNEY26SxM*JdGhbQM63zp>VOw^Az+!aJ*oL zuqLEtkX9GZ@U$V3x2e3Q*#pfJ)KxqqYYkGx{jj>Je#6nUsg{~4%n$KZSomqUct#N) zeH7A6B=LE)dEp%2EQ8=mR0a-!d=gHdq0J?=DNSf5&(h(N!jw)lo04>)q$q{ocGAD3 z{L*`icz)Bz6s1`7$3|q;;L0X&Tvd%{4fyyNyrc?Qi+n9$c1u7P;L$y6)vh=T9) z;z+i%ky;}@M>3$1dJ1E7AmWo&(NH8P?W8Zzo=Vp8pd&86p$JPYeyT6`ImY=X6-5A& z{6P6KTwwlL?voy&FUs$c;4(g1iQ@b^nEEP$3{klSiHW2j~t*jp?PY>x1G<7JBu&-h{5W*SO)?QRy*ya7l?)%6OwF zB$>r&E2KDeRql}NBvr{?zetO|unOSFfQbuHxJt${t*;7tW8yBWkI^h_+NrlnHXxxd zR24e(dysDQGWAu-`>QSRVXa?yP;avUeInArXzf4IZQLBDwyLLK_zgxJ3BncX>YELBZEU=H-as z$Nj3vbZ_sfQJxgqEn=(D7WRC5+i}WIo`nU%zGtRpcvj?jsm425Li|0g6pBU~M!GgZ?Le5%g|u!sbk(wj zYo!jgCUVrv-lz2e#DwYR-is8imrIWdZ9hLCQS=k-nBdz*{67UE<@2rj zc@v_Km(Ra(is`4Bp8_j(OC!{`BA7NVw$`|vK3Q?I1F6-Dzyt*vgHC-Wbj-8U-HnB5 z`u@Q|^<-nM>QJVujhPO8f9rUh0!=|@e^_&^x+NO-IIj{{s_X;K~31 diff --git a/examples/03_gcc_nested_function/makefile b/examples/03_gcc_nested_function/makefile index 5fe6a84..6080f89 100644 --- a/examples/03_gcc_nested_function/makefile +++ b/examples/03_gcc_nested_function/makefile @@ -52,6 +52,6 @@ profile-linux: echo "Requires perf, which depends on the kernel version, and might be in linux-tools package or similar" echo "Must be run as sudo" $(CC) $(SRC) $(MATH) -o $(OUTPUT) - sudo perf record $(OUTPUT) + sudo perf record ./$(OUTPUT) sudo perf report rm perf.data diff --git a/examples/04_sample_from_cdf_simple/example b/examples/04_sample_from_cdf_simple/example index 5d1dcb3703305afef8ea1dae09667764e74f0398..61fd198909d837c015cbaa907c47508484ea5b9f 100755 GIT binary patch delta 5996 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 F{0}pYlRf|d delta 4414 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 eN&)IwUSQu|u5$(S{qlmSL*m