waves-16-arma

git clone https://git.igankevich.com/waves-16-arma.git
Log | Files | Refs

commit bd20087ee4957f2dd6cbdf0defa17fc4bc6e5afa
parent 3c9b5ea4224ff5521df3effc4abff05111e95e2b
Author: Ivan Gankevich <igankevich@ya.ru>
Date:   Mon, 21 Aug 2017 10:47:43 +0300

Change figures format to eps.

Diffstat:
arma.org | 42++++++++++++++++++++++++++++++------------
figures/bench-cpu-gpu.eps | 307+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
figures/breakdown-cpu-gpu.eps | 564+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 901 insertions(+), 12 deletions(-)

diff --git a/arma.org b/arma.org @@ -652,7 +652,7 @@ fig.\nbsp{}[[propagating-wave-distributions]],\nbsp{}[[standing-wave-distributio #+name: propagating-wave-distributions #+header: :width 4.5 :height 5 -#+begin_src R :file build/propagating-wave-qqplots.pdf +#+begin_src R :file build/propagating-wave-qqplots.eps source(file.path("R", "common.R")) par(pty="s", mfrow=c(2, 2), mai = c(1, 0.2, 0.2, 0.2)) arma.qqplot_grid( @@ -667,11 +667,11 @@ arma.qqplot_grid( #+caption: Quantile-quantile plots for propagating waves. #+label: propagating-wave-distributions #+RESULTS: propagating-wave-distributions -[[file:build/propagating-wave-qqplots.pdf]] +[[file:build/propagating-wave-qqplots.eps]] #+name: standing-wave-distributions #+header: :width 4.5 :height 5 -#+begin_src R :file build/standing-wave-qqplots.pdf +#+begin_src R :file build/standing-wave-qqplots.eps source(file.path("R", "common.R")) par(pty="s", mfrow=c(2, 2), mai = c(1, 0.2, 0.2, 0.2)) arma.qqplot_grid( @@ -686,11 +686,11 @@ arma.qqplot_grid( #+caption: Quantile-quantile plots for standing waves. #+label: standing-wave-distributions #+RESULTS: standing-wave-distributions -[[file:build/standing-wave-qqplots.pdf]] +[[file:build/standing-wave-qqplots.eps]] #+name: acf-slices #+header: :width 4.5 :height 7 -#+begin_src R :file build/acf-slices.pdf +#+begin_src R :file build/acf-slices.eps source(file.path("R", "common.R")) propagating_acf <- read.csv(file.path("build", "arma-benchmarks", "verification", "propagating_wave", "acf.csv")) standing_acf <- read.csv(file.path("build", "arma-benchmarks", "verification", "standing_wave", "acf.csv")) @@ -704,7 +704,7 @@ for (i in seq(0, 4)) { #+caption: Time slices of ACF for standing (left column) and propagating waves (right column). #+label: acf-slices #+RESULTS: acf-slices -[[file:build/acf-slices.pdf]] +[[file:build/acf-slices.eps]] Graph tails in fig.\nbsp{}[[propagating-wave-distributions]] deviate from original distribution for individual wave characteristics, because every wave have to be @@ -1135,7 +1135,7 @@ much as machine precision allows) in resulting velocity potential fields. #+name: fig-potential-field-nonlinear #+header: :width 8 :height 11 -#+begin_src R :file build/plain-wave-velocity-field-comparison.pdf +#+begin_src R :file build/plain-wave-velocity-field-comparison.eps source(file.path("R", "velocity-potentials.R")) par(pty="s") nlevels <- 41 @@ -1179,7 +1179,7 @@ arma.plot_velocity_potential_field_legend( #+label: fig-potential-field-nonlinear #+attr_latex: :width \textwidth #+RESULTS: fig-potential-field-nonlinear -[[file:build/plain-wave-velocity-field-comparison.pdf]] +[[file:build/plain-wave-velocity-field-comparison.eps]] **** The difference with small-amplitude wave theory The experiment, in which velocity fields produced numerically by different @@ -1198,7 +1198,7 @@ on wave amplitudes. #+name: fig-velocity-field-2d #+header: :width 8 :height 11 -#+begin_src R :file build/large-and-small-amplitude-velocity-field-comparison.pdf +#+begin_src R :file build/large-and-small-amplitude-velocity-field-comparison.eps source(file.path("R", "velocity-potentials.R")) linetypes = c("solid", "dashed") par(mfrow=c(2, 1)) @@ -1220,7 +1220,7 @@ arma.plot_velocity( #+caption: Comparison of velocity field on the ocean wavy surface obtained by generic formula (\(u_1\)) and formula for small-amplitude waves (\(u_2\)). Velocity field for realisations containing small-amplitude (top) and large-amplitude (bottom) waves. #+attr_latex: :width \textwidth #+RESULTS: fig-velocity-field-2d -[[file:build/large-and-small-amplitude-velocity-field-comparison.pdf]] +[[file:build/large-and-small-amplitude-velocity-field-comparison.eps]] * High-performance software implementation for heterogeneous platforms :PROPERTIES: @@ -1287,7 +1287,7 @@ processor cores. #+name: fig-ramp-up-interval #+header: :width 4.5 :height 5 -#+begin_src R :file build/ramp-up-interval.pdf +#+begin_src R :file build/ramp-up-interval.eps source(file.path("R", "common.R")) par(mar=c(0,1,0,0)) arma.plot_ramp_up_interval() @@ -1296,7 +1296,7 @@ arma.plot_ramp_up_interval() #+caption: Ramp-up interval at the beginning of the \(OX\) axis of the realisation. #+label: fig-ramp-up-interval #+RESULTS: fig-ramp-up-interval -[[file:build/ramp-up-interval.pdf]] +[[file:build/ramp-up-interval.eps]] ** Velocity potential computation :PROPERTIES: @@ -1462,6 +1462,7 @@ bibliographystyle:styles/spphys.bst bibliography:refs.bib * Config :noexport: +** Clone data repository #+begin_src sh :exports none :results verbatim set -e dir=build/arma-benchmarks @@ -1479,3 +1480,20 @@ git checkout 730ef79a9f49df9c0c22d0a0f06e4d0b69b5bd99 #+RESULTS: : Ваша ветка обновлена в соответствии с «origin/master». : Already up-to-date. +** Configure org export +#+begin_src elisp +(add-to-list 'org-babel-R-graphics-devices '(:eps "cairo_ps" "file")) +#+end_src + +#+RESULTS: +| :eps | cairo_ps | file | +| :bmp | bmp | filename | +| :jpg | jpeg | filename | +| :jpeg | jpeg | filename | +| :tikz | tikz | file | +| :tiff | tiff | filename | +| :png | png | filename | +| :svg | svg | file | +| :pdf | pdf | file | +| :ps | postscript | file | +| :postscript | postscript | file | diff --git a/figures/bench-cpu-gpu.eps b/figures/bench-cpu-gpu.eps @@ -0,0 +1,307 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.14.8 (http://cairographics.org) +%%CreationDate: Mon Aug 21 10:42:40 2017 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 0 0 216 180 +%%EndComments +%%BeginProlog +save +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%BeginSetup +%%BeginResource: font f-0-0 +%!FontType1-1.1 f-0-0 1.0 +11 dict begin +/FontName /f-0-0 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/FontBBox {0 -218 932 688 } readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 32 /space put +dup 44 /comma put +dup 48 /zero put +dup 49 /one put +dup 50 /two put +dup 52 /four put +dup 53 /five put +dup 54 /six put +dup 56 /eight put +dup 67 /C put +dup 76 /L put +dup 77 /M put +dup 79 /O put +dup 80 /P put +dup 84 /T put +dup 87 /W put +dup 97 /a put +dup 99 /c put +dup 101 /e put +dup 102 /f put +dup 105 /i put +dup 109 /m put +dup 110 /n put +dup 112 /p put +dup 114 /r put +dup 115 /s put +dup 117 /u put +dup 118 /v put +dup 121 /y put +dup 122 /z put +readonly def +currentdict end +currentfile eexec +f983ef0097ece636fb4a96c74d26ab84185f6dfa4a16a7a1c27bbe3f1156aea698df336d20b467 +b10e7f33846656653c5ac6962759d3056cbdb3190bac614b984bf5a132dc418192443014ba63de +800d392b6fea026574bb2535fd7bb5338f35bf15a88ea328fdaa49670c7852e3d060f3c5d6b07f +2ef6d0f22646c5d18e19a2ae3ee120390f6dd96f76dcf1e127de5e9299077a00c17c0d71e36e5b +9d5ec58fceda57739a6a4214d4b79d6c48d2784b60c320323c7acddddf34db833cac0cf109f799 +69d114a330d372e5c978a66acc84e3fe5557f6240856a013ffaa0199444e5c5036f775eba4a5c5 +8cde66cf604b9aca2178431127b8a1ff7ed633a65c04600af5f573483112251cae0181db2ebfb9 +9a45ac90c9bd9639e0c1350da9233535f660ca5517152fab8d553ca6b82223d675eb493fdfea24 +d1d1828c93bb745057d2d1e7595ad877684d6e403e1ace1a2adf18d400ca04ece816d7efabe037 +dca7d65284359a62672537c4a1543b81cc57efcb4d7be40e43f4596589ee0d1ac4bf21f6fbe902 +7e85a939a5c9845e4ee34bef1b62c17fbbb45636b16cb840dcada35b5acfc169819d3bcf4d973b +036ea5ff445eea093c448ecdc6364bb0df91fd0a450145ea1aebe3cfa278a66f098d854633ad21 +75c450ff4307d4cef5b80c3648e57ad84ad44120fe254c47bfd4ffcc23d9ea9134c75be68681be +32ee4012c38e5131fe6b49b363cbef95115feb1b33764f16c9fa0a5d739b43449790d75f9ab4c8 +3c2ac544d688071444c6eb6e9309f4f0591fe7657c22dff4d0fba9b8cb9db771b7479601139357 +f84aebd8d33f595a17b054d9040cc2dbbde8bfa5db272ea606fd61b703b07ac5ccce1aa8454087 +92cc6196da7d140458996eafe570e0dffce85768743b3439e65a65ecd0f99b73a297c097d7d2be +e24dc5d1d4b33615c3feb58aa31413566126b0105e42541057506f11bcc7e2383ff823294cf2ee +8687b3b953a7a5a44a6539b7de7bc8835d4259f52ed75a9928c1af3429867abce2e826268ef55b +dd84c71e39f320f5042b8497eaaf56cfbb49879cee6930dd82446ff801e06f5796bfcdfbb4653b +16da7a182e9637465d5b39cf920e11f11b58087cbe87e9853d60aaa34e7fb2b78b4aaad0da5f35 +540813829820e727290ecf937060379d2ad806af19202020d1c223fc97cc3dcb84492f47044726 +9d1f5874f10124e059b43a7e975e3555fb2d1053fc76bcf45e3310e5f2810bdf9db93c54c00c26 +8e7429c84f79653944bd1fca8ec88d213eb27cfc8d3fcb4b616901954aa95250c88cb9b16d27d8 +8865faada291da6a3404b9037be33de044911031bf9316efaac211de127b9160e496f59936bac8 +2c40429a07fdaf43c5a3ad1eeb6a952a92dc47301c4e0863018618ddcabc194c597f7f9553887e +9c4acaf9037662aff7d66469c68531582ebf6028a5ef4886fc797dcc1f99eeb82cf3f13e3bf079 +583c1e95529ddb3629741b69d4ae4561b1a8af8a02c4aa4d822bea9f1365d28565ef8c0c10fd11 +dded1bdad073ae0f384855db62f8bd7fe39a956663b12ef8f7ef08bee0e2f033fa6da8c51156a9 +c24ea709b5779ee0bf1b7f9a6bc37db0e6a5bff37ee45e3ef99056d1f62e2fa64ad356558c1c3a +734f0c5e89f8686750e33683e2f633a8aecbd2f1598f6e8a3ae774cffc81d8671408b0d067da74 +fa06dbb45c68e45a02a4281d2b1fd423d3bdd29856fde48f155f1e995a7762a0fd9971721700b1 +803e9a5c09180b3e84fe51048a1f955ab88897fb7cf990c4a1b49ac1fff20ee967fbd5352a32d4 +65876a743f0981f92c3d83d190b2273adda4e1a9f0c5b7532c9ebec0a9c5cf2ce5519b092468dd +51ee9d4fb880378d8a4d5b53aaf387884a135a78592bea962fcd976404b050387927190006642c +5c2f915af6200115cfe4874ca379a3d6583f8cf13fef3bfbbe8147a2a9912e9e6941738c132b67 +10144cae3c1cb509e78005cef09400cda1a182858cbd8661104e311a780c564183f2641c90d307 +9f67b955232930086cfed59ffbf44671bca0b4a747a271ab03632a2f23f5e5c0345309d6ea17b9 +8af25c9b6ba1b45be1711c589487b8305015849e3fdb545726cde555d8bdd9ca5a7097f4381283 +6290479541138a20b5de7516be416456c690f50d5e859835b905ca80c80a8eb33f6f6ede4072e8 +b28fbbe37b71ddc2250e67986622b6bfe0e9a91907b7e491b91a53fbd95fef163b7ddb36ffa5e5 +5750dbdae6e757c66c7fa980a566a13536053ee1581bf3becdf7bc683428fca8ddf94022d934d6 +f18a26a154c20bbea11b7521fa477cf2800b7c4990160f8f0490202c647fa3a9b2a6c90c7d33ac +71e50789d09a5860487490827fd49ddad853e451bcf71ad54d24a4e3ebfc47953abbaba0a52872 +b0298a468e97abe686100bc603d63d8cb98300533f7fbf9a23c60ac3de598d48a769e362e2c5be +41ff49b658ab71ad7fea4ac704310986d1e671cd868deac432db99c17a6e747d90f1330fe903b9 +63375b299a205e0c54be051da55fe96cd792374101167c4df553b549b16b97be0e6d4291cc5835 +a5a3675a9168e70d83d65311cd705598aa19854a5ea029aa472810ad2e26a921347231dd046b1c +1a1d9d248f1957dd20aebd07c842aaa35e08f57794af451ca6ff862c9309736602cb36d666684c +ae226aee0fdaa6a0b047f3dc66fe55bf4dfa8644f4d5210854a056aa810dd9ffd55c22b2ecf425 +9a745a357346d1da4f460189ca645a6df0782a31f4d6f0f62355ca205d18ee4a0bab8b6246766d +5db69c20ce611e970a71e01908cae35f6cb69fad78ccce0b79c111e238205383224e65d87d4066 +295cb10bceb96fba50463154f826fb0f3a8bb92e3dd0105bb75bb9c57ef239862613178db30ea8 +e951f4792e87ff34a2e9c1d92265520dac3669be129e09412ad052f76e02b9de1d9f90e861fabe +b1d809e9ea53501501b86484d556841c4c2f1597df077e8707f6769ac4d3f7be11ccd581c4a4f8 +a28463f3e3b2ceae9d06a718b6795ce175b921697f9d00c545116d00ac562f742eaf4d4b3bebae +535b8c32296fe55a792c54fda16e804f1d6db813bc5c14610ed069e8319b2b160608a9a9934c79 +983463d141a32ef36f110e62c0478ee7b58d4ce58ea70343fa3318cf92db095f502f9403562083 +5a1d1c8387b52522a70f8d695dab64e745cf0674a6ec5b59373250b38cc97cdd32dae2134b8813 +2955a674c60d57747c398c61dd4275be8cfb3bc41f9d4bda3dc9cb24e92b4fdcac6c4366ae8f17 +c3885d16b8295b75c5c269c27e881e2d721f4eb14114a68f32ce37c81c5ae39fb707b758addc06 +bd1326e7ef7c8e7e3f47ef431ba2f796d0991fea9c7a5a49aa3de4fa66418ead4a04349b7d2d48 +e274f5220b21d42a273aa1226dc857d5d2cdc524f94ff5acec8fb482c3bc8c977450fdb6b11a4c +7dcd4a1a93ec8014bc4fdf719b7b9c8204d63fd49dedcd53b28fa873526a85cde26693c40bd4af +37e3c7babd801b7019f40d1e92ae553e712b9960b110cf073d7ccc8f22ba6993f3701bd0d903d2 +f5d5480a28596d9608be23ee960d8282af2622cf1d47c1a0705c55154cb1dfb6be67fb5cfd8120 +9c19afadec1378a9a4528592f32ad9b238a4a720b44198cf3b10c6ad26e5da6d92a7c8f03ba50b +c5c687248ebdc22fabb382c317ad1971c77b2fa1073c0574e267aa1f4b1cd1032376da41cebf6c +65086a342f1db6b62212123ef766818ec810082cab9582d63b929342c308aa23f16825845db901 +8ff7a484f827579bffacdac7ffa9239314493829a9ef5b253d752c09346eda3c72e77c1f7d988c +bfc1af2f67b8541527242b7ec821b597bfdf1eea7108cab459f4faa5fc831e9be0157cbbf7d1fd +83caf9dfc50cc758ca9c20ec9970f5d12a6113d403e9573db5e7c7546a98529be9cfb35f9eac7c +345d6842ccad9af0a1a1325da285200f262ffa9d427eb94af3f9f29cf57c6afb258f73113e349a +2fd35f339a82bd6b6cc1ca0acbae9cefe8f7b12fcbc8e46980422384ef7a60d51872a4bc54e925 +84a6dec783ecf0416d977b30336c3ee7150d3d08a84c56d4bbc95ee09957654387f91c8dab148c +f67bb0852aa96d5232423567c1b25b33935f69323b3f2f84c57ec3432d70ad8cebee82d396f2a3 +b38af042eaf9101b525178e238fcaf81d5e94a2e41560e03056866257e6e5656366e06f871f283 +1b60cccb5be3086c95a1e72ed640f14af566f53a9287e1022ccd9ac60547f26cf34e8b553626ee +01f4fb500973bac94509945dc0e604231e3e61d1727f75ba022e6551e779f3aee22ddb09c0aa6a +2010588883bbf78c532482363b4defac0db3e8655f60d73b5c653c64df7b8af1cf570287b84218 +feaab628df71fba23691bfcf0760e9e410c9ffd6b35eb4564c8ce446911b13aded7429230adcc4 +5201698695a78ae371270c0b6e6d92fb660246d095b37604ac1d127639b8ed775dc1b16385990c +daa292edd33971f14e11506d7b62c2c2878fd36d31607634789cd3af562a2ca1c42d55aa14a849 +ba5aca199e0fefea8f63e95b231eeb2d0ef80e1c5845aac75ccac7e1dd807e2eba31be711afdf7 +5ec60c66aa256b0adc2a081253261867bfd12626e3c85083395887f6deba03c7015d9ca8318ddc +d05bdf5a11f6bd26765a4e301bc8a1bd1c5884b1c421a9a8bc352852dc6f4f1314c6fd0dd39ff4 +fae0d4350a4412ada3434cf639a26cb3f94662862aebb4a9910f9fc4c943d95730177a61db977e +c7bdc33fcdc07fa5dd41394dcd98410177498580680c559babf7b95de486906a29c48cdd125c3c +0b08e8a3782a950734b4ca2dbc209f438f8af2ed2fd4f16f38e2905376d09e558e5aca5b6289af +574a1d74e673036e38ef3d3cf562eb8738d255136e69e3b5b83f8b6fe50afc9693e0be4715ea31 +82f1fdcb6ddd4709a2ee9d0b528837e1ca559340fa806b5b6349c35e78430800d1404764393c2f +4b76871e8346e98588b0d90e51d5409abbedaaef4fd94ee25aab289d8c93507ec8b9bbf8a8bc9a +1b30999fed51d009fc53eb92041f74b60cb5477c8bab2a13c84259524532999f57dcf85e642ace +f04ea9e903180d81e9df0f262351b93b0e6fd89cf1a352c4f6d63763a7e3b4fffcedb5d9e65b55 +f5436b5fffd79b045db586a7bae4453d155fe24705f619a429251f1927b848cd2a5f7b5e54d690 +7a57aa7ef990e98adecedbf5eda11edc46eee55234803e911e76d64f7504b8f0e463b79b0e9646 +3faa83d2108731540020e343d47d37b4373fc020a0582b627b1a4c5855afc94b424335ccdfb807 +4f680e46b056d9fba141cafccae821909e05b2b95d0f12105ad89529ebbcbae34070f5fb50948a +47b10b8925c66836249bd09b050a068656c40e593762ce1ff733fb4d662988f105a123b4f85f8e +1158fd63a8d3fd0958ad702979e5c8a18be160d764a2d22461d2955dbdf032b0b820bcb27b0e72 +723029cb01e060d26b7343976efcc6ceeb5ae6768e8dbdc26f21361e30935f7c8e6c75e2277b99 +2a8dbd075a312991d03787447b5ea5478526d01584e6af01d8b9faeefb3c910603697c0040778a +ae6e58cf9ab40116ade43fd263eac6984f2158e03fbe30673656a665c5b6497166524e138c4caf +d42da1b1c183abfc81e5fe03eaf6c9db5f59056cb72ad0598ecf999c5412cb2152ed18b99df3c7 +318cf75ed91f472f65517c7f67ad4010add8a21900562c9d85b1bdcb573062b848aae890d71d96 +dcfdda7ea3eed4c5dd6906e838f7245b134702dd6846ac8c9b0b20fa59dfcdee9405688b83d901 +df2cb2938428b846f4f687ca55280c7a053dbf62e8e154c80a63822d0c6df6e73874af3443eb2f +afeda13c9ab7e518a4672c79f5900904cc37d0a667b2d5d51f3df79c612f560aa52d6835731c8f +3bbf61a709eadecac78ec03212e5e5b354807acf255568d6eb6818f76db343e4c51008fbabb2e2 +5e48eed5d2b6853a0a173d71588a0c196a22ef1c8f05bd21a78ec94fff74b514b2ea75f18ef956 +e0f90a3022c0db0e464d4c5bc0ce7a087622868bd019de8c66ed250cfc6c4fb621cb4a9f95cc54 +92ce8bf8b585376cf1b70b4f4e0e68a991cb38ad74988a56142c0cd9721101b6a3766b167f62b8 +2fb304dd19b80e1468d74c7ce4c30f0550d7f028be9fab0ff16632fc636fd8531c3efc9cf432f4 +380cc6a59ca288380a8b15bf7e8f6c2a53f16c2b1cefbf5da1deea55220dc2fb4757b45a7cb6b9 +9e8559a386d7ab4a8b62157bf8db9dd6670dadb625a69b3dbae13a2a9372ea436bd14ab519ce49 +eecf6315066284016478c042744fd2a66e96f41b97eec2ccb8a260d8cf10d980790dac93495d1e +7280df1f74cc47c167fe0d6faa547b44d8583ade1e8eddfb555feea6b98b16f086cffb65fcac2c +f5f6fad77f5c0632ad89c6549f5fedf2646255b0cfa7b33851958d30c773663518afa214cf3031 +848d65d564cc5c160000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 0 0 216 180 +%%EndPageSetup +q 0 0 216 180 rectclip q +1 g +0 0 216 180 rectfill +0 g +0.75 w +1 J +1 j +[] 0.0 d +10 M 49.531 62.32 m 61.48 67.719 l S +70.219 71.695 m 102.887 86.656 l S +111.391 91.082 m 185.906 134.816 l S +46.957 60.344 m 46.957 57.945 43.355 57.945 43.355 60.344 c 43.355 62.746 + 46.957 62.746 46.957 60.344 c S +67.652 69.695 m 67.652 67.297 64.055 67.297 64.055 69.695 c 64.055 72.098 + 67.652 72.098 67.652 69.695 c S +109.051 88.656 m 109.051 86.254 105.449 86.254 105.449 88.656 c 105.449 + 91.055 109.051 91.055 109.051 88.656 c S +191.844 137.246 m 191.844 134.844 188.246 134.844 188.246 137.246 c 188.246 + 139.645 191.844 139.645 191.844 137.246 c S +[ 3 3] 0 d +49.953 52.438 m 61.055 52.625 l S +[ 3 3] 0 d +70.652 52.809 m 102.453 53.5 l S +[ 3 3] 0 d +112.051 53.711 m 185.246 55.379 l S +[] 0.0 d +46.957 52.355 m 46.957 49.957 43.355 49.957 43.355 52.355 c 43.355 54.754 + 46.957 54.754 46.957 52.355 c S +67.652 52.707 m 67.652 50.305 64.055 50.305 64.055 52.707 c 64.055 55.105 + 67.652 55.105 67.652 52.707 c S +109.051 53.602 m 109.051 51.203 105.449 51.203 105.449 53.602 c 105.449 + 56.004 109.051 56.004 109.051 53.602 c S +191.844 55.488 m 191.844 53.086 188.246 53.086 188.246 55.488 c 188.246 + 57.887 191.844 57.887 191.844 55.488 c S +45.156 48.961 m 190.043 48.961 l S +45.156 48.961 m 45.156 44.16 l S +65.855 48.961 m 65.855 44.16 l S +107.25 48.961 m 107.25 44.16 l S +190.043 48.961 m 190.043 44.16 l S +BT +8 0 0 8 39.15625 32.239258 Tm +/f-0-0 1 Tf +[(128)-1087(256)-3675(512)]TJ +17.86084 0 Td +(1024)Tj +ET +39.359 50.812 m 39.359 131.559 l S +39.359 50.812 m 34.559 50.812 l S +39.359 77.727 m 34.559 77.727 l S +39.359 104.645 m 34.559 104.645 l S +39.359 131.559 m 34.559 131.559 l S +BT +0 8 -8 0 27.280273 48.8125 Tm +/f-0-0 1 Tf +[(0)-2864(5)-2615(10)-2364(15)]TJ +8 0 0 8 88.601562 13.040039 Tm +[(W)80(a)30(vy sur)-20(f)25(ace size)]TJ +0 8 -8 0 8.081055 82.800781 Tm +[(T)20(ime, s)]TJ +8 0 0 8 124.015625 119.352539 Tm +(OpenMP)Tj +0.728027 -7.401855 Td +(OpenCL)Tj +ET +Q Q +showpage +%%Trailer +end restore +%%EOF diff --git a/figures/breakdown-cpu-gpu.eps b/figures/breakdown-cpu-gpu.eps @@ -0,0 +1,564 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.14.8 (http://cairographics.org) +%%CreationDate: Mon Aug 21 10:42:41 2017 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 0 0 324 288 +%%EndComments +%%BeginProlog +save +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%BeginSetup +%%BeginResource: font f-0-0 +%!FontType1-1.1 f-0-0 1.0 +11 dict begin +/FontName /f-0-0 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/FontBBox {0 -218 932 688 } readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 32 /space put +dup 44 /comma put +dup 46 /period put +dup 48 /zero put +dup 49 /one put +dup 50 /two put +dup 52 /four put +dup 53 /five put +dup 54 /six put +dup 56 /eight put +dup 67 /C put +dup 70 /F put +dup 84 /T put +dup 87 /W put +dup 97 /a put +dup 99 /c put +dup 101 /e put +dup 102 /f put +dup 103 /g put +dup 105 /i put +dup 109 /m put +dup 111 /o put +dup 112 /p put +dup 114 /r put +dup 115 /s put +dup 117 /u put +dup 118 /v put +dup 121 /y put +dup 122 /z put +readonly def +currentdict end +currentfile eexec +f983ef0097ece636fb4a96c74d26ab84185f6dfa4a16a7a1c27bbe3f1156aea698df336d20b467 +b10e7f33846656653c5ac6962759d3056cbdb3190bac614b984bf5a132dc418192443014ba63de +800d392b6fea026574bb2535fd7bb5338f35bf15a88ea328fdaa49670c7852e3d060f3c5d6b07f +2ef6d0f22646c5d18e19a2ae3ee120390f6dd96f76dcf1e127de5e9299077a00c17c0d71e36e5b +9d5ec58fceda57739a6a4214d4b79d6c48d2784b60c320323c7acddddf34db833cac0cf109f799 +69d114a330d372e5c978a66acc84e3fe5557f6240856a013ffaa0199444e5c5036f775eba4a5c5 +8cde66cf604b9aca2178431127b8a1ff7ed633a65c04600af5f573483112251cae024f6cb3a999 +75f9c0952d6b5226ac3494a14587434ec00a84275422a6be858036376c4fd97ebdd48c0a28eb59 +87825a8bd3f284ed6fcf6f04a92e0f947a0463e09910a5c28ce7a6d25f9652967ec86a7452a9ed +c1e697410e496daf6f4d6b8138eb7a0cb26092688b6f43fba8f2aecfd87b68aa3b54bfcf75a06f +45cd8797ea17c60bc437cdbaff5934eb67805fe3767cffb48d9d743eb14a1ea84ca809b56c6e4b +c52515c87bf7ce71a1ebc532c4c37668eb6c287394d7a8887fe1bbe2e77aef72419bb3e91cdae5 +254ebdb09bbc90c1f03f7bdd52cad1022b1e6d2d5fe0a14ae9967ce0e3d5b359d5b25e5fb1b209 +f32d2a669c536c7ef040f49e8bd1ee0eaa178518032579076717dbb8de02af5b0ace713e4f97ac +fd19946aeb09e1e21dcc69760229e0af6de5223e636dad21727095efce81fa237b133bf3e60a28 +b8d67a6398f1c96400143fc92f0fc0e6af8fad74b3b3b58b12a29d3515aff070373d9c1b6e9d88 +acca3b0e27123effb1e0aaebff785343ce6b6fba1799321eb744958292bdc9908535b6c9f417b4 +750cf846f97f978c363a4b623daff18b6501e5007f09b017f35165e66a9784f3033f9aa2462665 +56499749a6fad9683dd5439bb50ed0365221db528c74239906528c72da24b7f6e5799d78b8dcb4 +328792570e3dcf5cc5832488c49d2ef7d8e737ecfd38d149e980388e0ed00d00a5aa85c115e95a +9b3e84559886b8a2a698ce337ef77890d1f36262ea562a0c56671ae7eea81760bfe89b582d0349 +9b47436a2de979705ceea4a1eb58419d4b2abe7cb2857ce5cc66620a3eb280f1a8f97807157004 +5f7978759e8a599d9b9a5e98193c767e304e709b82f6690ce195a4e3edf90aa077e3000e04589b +3ae276f19bbe7703953bb26849eb1f07887db17296b4cab43742e47738211973663c485636eb18 +180a5d3f29bff08cc0fbaec2fc653e96a1be1482e9d65856372a3e991d5891d8af5b273cb9a62f +1afa54ac32d75adafaf717b5042c1f0ea8c37b3d7fe2fbc3480537e24c708708590eb353b88c0f +36ca2e5c6d9fc8a92703cd651090f9419b60227e918bc1ac7708061fac0f2176c984a4589d8bbb +e0e31df68cd119c3f64a3a2e6a9099332f879fc47f1ba70055e86b375ba73f4ce6243fa08ff0da +fd2332f6e4f5b3569a0c812318eb14720c2892a2c5f582383c6efc40130f9a0b5a1b0e2c022b10 +f05ddaebde972f4766bb9d4a98353ed4eb5fdf2b2e3561adc3195e15350db4eb64aecff350da7a +26481c02a184638b65318d16ff1c9f679acb7ae719ddeb766904b96c7409ccf8e8bc5a78db4d77 +6a86edc111848fd0bcae26ae18e5738c2587bddd042d298ece2d6be54c0d2244e385175342b57d +26b02d1e1cdc08ff6b13e0110f88e341751a56f896821276d1c83047b31ff50e657b75c089261f +22299dc0792e9f2689b349c3b0c05d42259bb8095b6ab56f741e81036fa235188c7e118ba9c590 +0ee7b173b2d13345dfbcebc7e7d61cb1df8c231f424f99851b63266541d1da9ef97cda2df7e0e1 +3c083928f4be22e799ba6e0aa602148589c9ca6989d3390c66a3b712f4be47c0d4b0c850ac8ee8 +982e9cc406e21ab3180d1f3f89007ba7cc9020fed5d6534c878daa55aaf9a21c2badcb24c42b33 +31ddafe96154b83e8c39485c170e563f9da4370d3463816a94b859ad8772d555e8698dfffd1679 +18c69bfb31d5c52e99fb3b70870682d8b0f961dbaa19cece749a24f536f1632d15f7b0665e9662 +bdb7aefc08868405a446420b390fbd9371b4f6b95fb074c4fe5753381000390baadfdb65237570 +30e98315e7c05322aee20066ea280eab57bda2b46f676665212cc521b6dc7155b3720ec438d6ae +afe9f0bbe04ab50e50a7dc7c595a037a09dae713a3b724f1e98ff4d94dee6bca1133d15ff7a763 +ac96c15354804a6581739cf1ca016a141e1f445ddbae2b604e00609470f8cacc2acf9877d31088 +b037eea7aa2b8ca106c4e3acc6f4600a163549608f85aea5e8947b2b33f360560bbd233f454642 +215882f34ca6d71cb7d1d4fa524e67727d46ec2f8d9cda1cf861e75c9efdffee728bc8c3d82dd2 +1fa9a411e3256930b8d121eeea1a66b37504fdfa4f2816dee23590369397bc14bb71037faa6e15 +73f823ee955778e9bdea2f68b64e63439ea8f0f837f619ca2815285aa55e3a3b0dd390f42377a7 +14f5a46ec93d0692a7936331a8479bcaeb272ddd00e1c63b8c358b428f756360f858e7e822721b +f2b27efd5e663695d33d46e5d884456b18f9ef8f642b7494c6f6df23dcad2efe4467fc7e8be0af +a35ca388f7abb78caf9581abe00f32dfa22d55b3aa1234c7205eb9749c5c72e276a37fe357d96b +78277be385de9b4630c31a7fa79074fa5870a1945eef6c1b81fe4115c5129c2edfe0df91b663c2 +7452237e88d835dd6b17c08cc48af9d51f9b68726c673ed5e135ff712dbc08f82f889665258b1f +0dee653f79c6960bc492d19c3a6ec87386e5eb566aac676750dceed02c874f3e46f3a07a4a829f +e75403dc4e19ebc1cd4f261733fcf305d99da60b1a846499819cb2ae0c32194e604c14c62a3b16 +c119059485267ed8d95ba1721a7a5047c027838c77678d9d579c1153f59768a84cd5277b761663 +3f0d275829e1aa592bf298306722d2c94f2107452b8751f4e2ae472ae412228187ce3a1e53544a +b9882279cbba6f8afb1b0560ed80ba0e44c7c79421e3ccd04e13000ed22069eba0d03ff5163620 +5c0c9b0e714c76571c12309e9901094dda25867ecbb8541a3693c35a253500ab77122d12697fef +02460811eab702b87ba70e10e06514196cc355eee6bbebb16276224a692dbfd54e0a60c52c508d +d6bffb8331531f067a935f4973bc35c6cad9ee797cb4d1011485bd380ffc031217ffc6ee0de8ed +a9e66e465ae24afdb8f0642f077bc91fc8f5484d527dd81c25228a552d55daea683d367bcbf403 +22a3c398bc2828b4f5e86e8975a512f58064b7b51601a160d0afa448ce5c06988aeaf4f7ba2b4f +1091268a1715733cf09164bf1e4aa56d3a636688cb9724ccb9696d4ab0e35ddf5ae10b27e104c8 +ce49a012ffd596e3dfdd53c99b7cfc26b1ab14f7fb82107bf9e961996c7cb3b8c4ba99c134e8e9 +ff6cba03d1ebcc88357a7b53e64d40555ec9fa32b110c899082b1b4bfadeee6fc5ed06620a9a66 +dca4125823c905d971317df328ab8bb8770813961413f953094c6c14a9c6262e2df52461f61444 +35b759c63368bbe6ac1ce22dc20f12e16ccfd2e6187579321f54e4bb34a73520e1cbaaf4fe36d5 +7b8e0d1262eea15956ced638df766f2fed615f126ec3c8106c8218afa0a0d3242e2a258f023c1e +0ded565d791df2633435bf74c0b0b53e4d578792888a7df1d65e9813c1fe839158db0ae97af385 +b034d39e336c6478888242b652beac30a9717723e46c90a51219fb8289fe24478071073deb1ad7 +ebe89c63afb3f00eb3d36319fdfdf549585ae372c4c6ce3267b6a6a4885b4e69a3009428589ca0 +59ab144915a8292504f21d932c08a02f3e87378322ee2ad85c0561884d55d7d46c4a69828cca2b +c33ee3b861e895833ad017d5e5996ecf4294019b94c444e7b996097805303e309cd590bc38ad27 +a5bd2066f23c146fb5a7a38c023ffb734a21702f10704e70aae3d43a56cdcdb37c88bcf8fdf9c2 +1e972a7da475bea17d22c242d424476c6c497f5fff1fe03cf6bfd9803b179568c86ac75296aa78 +27ce266e3eb91cb4f3b7bda416b1413ab1f57f92b910ef8e7a00d148e0d46d0fb83db20a81cc4a +0e8616f13e31baece3557b0a3bac8807bb3651ddee648ba443e64406c6d0e6ce3e3df24bc933e5 +7c21d6dc923b2126b1f5cab606961405180f9478b89d127e5db62c863c92e7d523253457955601 +49df8dfc9898ad7fc848a3deb7e9ee4e983db69f2a64ea902eee1eec58b6d562e94ca7628d4e41 +05607289564fe5906fd67612865d4a47f60c0af3b25bb7a607543e113bbe4a14fac9631c0c637f +847b822bc091a2791261d2d914ee0a3c760bf6c7a0db36c525580496b36e38130d5149d10652ff +1450bbdae5f4aa4fdc0ad1f7951cf028d4c341a98c3ee94c08c0f45f5db6440990319b3384adb7 +b043f9c1ef3303413c3dc77f7ce3525b0a551c9be35b0e5882cb8d4b0e81390c67b61c835f2a2e +3f6a79f0cd7c89482df59ed58af423e694cd5eb74c8ece357ed42e08cc9685f6f6d6e1736f2d12 +eb3a2bcd9f8049f5f8b7fafc8e301eaf64d3dbe388cf58097e17a8617423d7d66f0a554109302e +d93692dbf1b4a25466d4c7c17c2e6afd880671b08b52b5c68e13a7a59d332f48b64dee9074ed8a +3d9deec7978c6a8c16d17d8b2b618755d6c3c19aecb19330fc4148e760ec6875501379c7664cad +fa5171ede2dc2ade2733347a8924ab4dfd223ce1fb6e54cd01c7629179397729cb7092c3628c98 +1fd20e5fe6291e313126627bb63559476b6504606829f741724e8d187c52e5dde1ce176d1bb937 +a5525dcfbd33b328da1ebc37d7707f74edfbb93e6fcb4336a941e2ca6ae5b105290e1afd17f75e +75fd4726b0eefd60693655fbc5917e33b49e5c4f1552d0825b16fe527b9b763b957278bff8d78d +c15451ebf292bdea20dd31138a2e4f3ce407119c3e1ca745c2cdd21a37883ab6e52589eb12497e +4de284d1970bc1129776a11700a0d10e1b8dd08325cde7b3fd6c186d00e1ee1ddcd7cef2a48cf0 +97affe157fd97a6b07d5e5451de74ad36e273d1f0aae8846a2ecd26461d52cd9d7fe019584df1d +d8bea83d8668e2924b0b6e48a62b74c4cd17cce47e751d1244f88b2e60b001aea3a95035b06d50 +30a1e8fd35f5aa1215b08efcc7ab443a53c6d937f7c04bdc7a2bb394802f16e8476b637d77aa98 +4faa3a9c64d9defd7ad2581787e9502d246201cd3c7f1db61b81de63c377db3cc59d46c16f82ce +9fa4f2f7ef0d7a65fcfda1cbc20a5228e6beacb08c5c744e70fd8f4e307b9a074da1502e4c8b1d +c334863e7ea2ad616f948cc0ff5f10b7f9484aca69e58c31d7d3651e852005a532dfa3edd37d4d +f3fc59c45e3a194ee1763f522c4f567cabeb12492de46c23c112934fd35c042efd054fcac668de +5094b630e2ffcd891d1d72126c4516b8be05efcdaa01aeefe07278b410b7a87531f620149d039a +edf5ba0b11b7a2e095d66dfebb1bfa166a088b8f8f4275e86e572b9a76107facc219b0758132bc +4276d4d042c67e4ea9239093f40f0097beb254c04e6cc8bb4d8cb2873bca57d3a6adc3b64ff89d +cfd4d77af4d96716e5ec47df46f68d0db8cab4e15d60c9eb362dd68818afd0e215cfff2f2655bb +50ff7ca7d79183aecfe3210383add599ef1ce7acb9b9efd9eff9272667df7b7aca82bd5f867a18 +21b14b1f1734e6ad6b29c944325e59bea510a6d8718e32e4ad3abbf4793d774630b9bf751cf293 +b3972fd2c08f33783bc534036e514e54c831f241f566ca8c9e56803ace143e3a2abbfa7068fdd6 +6ca5a6f4db0e55ee56bb4c3835213bcc22154b082d0edcffbc5ae5e724abd7eb014c80602054be +49e6e2c27c0e784a3ef6d76b1f920a236ae9386cec01b38d26626602e8ed22c9351c8343cd22cc +f1da390ecc7ad1c5709674a7967daf1495c737e25294ce690a2d41c18ff25da18c08a99d1a24e7 +90d4ae75f26f3319c32fbdfe9cea16ca96717f2a6a27f2ba03cd7fdc8b961367b450580dcaad26 +bcabc905c8cd003527ed539b5bd4dafe3f21e7e2738bdf9121b6d534946239b55b3e7e9d7f552a +b07faaae6ed1e139116a8f12716457b6d57f207c761071cb41d3c2cfe37fa1f60a55f624807013 +f98dbdd95b80531abc764bb6e32e664f21bd36164ee19ad3b22b8a183560e1b9fb29a675ffa453 +67ab329fa811727399bed97f86df749bcbc498cec27ebe71efa30000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +%%BeginResource: font f-1-0 +%!FontType1-1.1 f-1-0 1.0 +11 dict begin +/FontName /f-1-0 def +/PaintType 0 def +/FontType 1 def +/FontMatrix [0.001 0 0 0.001 0 0] readonly def +/FontBBox {0 -205 921 691 } readonly def +/Encoding 256 array +0 1 255 {1 index exch /.notdef put} for +dup 67 /C put +dup 76 /L put +dup 77 /M put +dup 79 /O put +dup 80 /P put +dup 101 /e put +dup 110 /n put +dup 112 /p put +readonly def +currentdict end +currentfile eexec +f983ef0097ece636fb4a96c74d26ab84185f6dfa4a16a7a1c27bbe3f1156aea698df336d20b467 +b10e7f33846656653c5ac6962759d3056cbdb3190bac614b984bf5a132dc418192443014ba63de +800d392b6fea026574bb2535fd7bb5338f35bf15a88ea328fdaa49670c7852e3d060f3c5d6b07f +2ef6d0f22646c5d18e19a2ae3ee120390f6dd96f76dcf1e127de5e9299077a00c17c0d71e36e5b +9d5ec58fceda57739a6a4214d4b79d6c48d2784b60c320323c7acddddf34db833cac0cf109f799 +69d114a330d372e5c978a66acc84e3fe5557f6240856a013ffaa0199444e5c5036f775eba4a5c5 +8cde66cf604b9aca2178431127b8a1ff7ed633a65c04600af5f573483112251caca658d82a0c29 +1150a1fcd2cec791a6642ed2e687f1b4142049983dbd399743d35021fdf628893dc4c732911f0d +ca56cfae37e8819a9e4e9b7f733fbbae7ed73a3a3fd32af053405cd581aebab189942a204a1eeb +46eec9d6a0bf9147cc8e33556a665c971c3dffcc00dc672e4f22e59177d480ce65ca6acb15e2d0 +7a4ffb30e6aa9c0035018e4fcae57bf73c8b8cb537cefde2d4219d7e2e1bbb71ba72dbe8a183d0 +9c4b25e23ee4215a54c9ebc291e43cce4cf968810067a43ba87deaa37c225b5dab0da280f1ae51 +85b476eb01fe6aa68959d99cab970664c513f164d578ede993f0f66ff942886dcc5bb862bd79de +717e1b2f9cda7193ef6bc311d06041f6fb9b7498d17f184b002d736b69e9170232626c8e15c169 +1db167be6e5241a8380bd16e727a2cfeb4929227dbf841f42cf0833515853430ff9e46d8b2b921 +7cf3a844d27c5db8ab81fa8ef1b40be33129b829dc2423535cfbc2ddcf5da9db29b6914f19907c +d83b64685a19f0d92779c81ebcc6c93d684b2fd8fe660af0fac8975af549ba99e8400bb9c62928 +ac6a6cbb3c0274835213636dfae547a7d7a00ce16598a81de8a7a4a77accd34bee89dce0ca0ca3 +6dcbd4b8b289f5e52063b964262865c25c70d5a6a34e53c51d455f30504fdf17e98ddfff134831 +bac5ff8c62b894e007dcacea3d70dfbff12af96363716324a080ad09cdc09069db85bb7b25ccb0 +67b8f23a23aeea8472b318a11de7256aa73c966875a951778bc224cc980009c38c962f4d922d0d +5eaeb9c2084a2a2b7a6549eced40ecfca8428b111b48f63a4bfaa180aabcea2b8e31a29528dfe4 +c0fe8f62ff3d33ea7f4a23a914def9a058141f93d9926b40ce947bf5748e1b6685c3fdc27532c9 +86eb5a801c7b14678a54f86e7deab7a2a07181e71b2578227c27137a74b0c4cf7720a9fb8f0548 +7ddc0ea403f4b5264cd0b255a4a9ce282d69e7e9a7206c1e3c45a20c374dd6d594ab2e0234dbd8 +bd17967a6ae5427a20b5249ea643a3f856a5b87835a73613302087c94b23493c0be6fc627d3b1b +1ffaba717e9960f9535ca960b54944123ff6988427f23398ed99b33be4747af13d03fc6d614a75 +e14d663b86862fb79264900131bb413eb3b39fb45605959df4837be1ddda0361b791ca8d9757e4 +c75185d80c268ba4d7ca9f8ec3ccde4f642d6309f02a0a700c9ad6b08c1b8a84742093630d21cd +ef59c00d42f8531c153497b0ea7664d796ad65eee0ecc97e2458ca816b8ad6a5cac98aa864c0ef +4830d99d4f69c37121a14bb6c58806cf94ebed1e55cfac6fba5ec77963d5ce5c1e5987796af2fd +1c7e951375cc81925e4282e47b82a568d2e7f830e62f87ee8d19ef34e479434dbca2036d491bd2 +fbc04e59b8f004d7d709bf1982edc4ff4d3f56f478ae35b8f8ac1815485df4ad3a065915665b1d +804fd6c69e3c3c569cd3b0ec81bf2eb902b76aab74719e45a5ae76e68c8f112a635a42779a2638 +6421ab04ffd65d95d04bc881cb12fd32a67191b9f809ab6f98d33cec77f554ee4a71393d751e79 +8887dea8b154d4f65f0dcca6ccf5573a2479afbd1f389dee4498ff03e16a356352ba991e607574 +e8af8b7f992d5948ed3f303785550407a6037e8d0157710a426b75107f23437452d26473fb3da0 +b040bc4324ece687b2f6909eb91cf239a0559b9cd479dcf3b69ac96b4fca84c97dd46efe476bb9 +e6c31e3e45504095ec203aa2576900eaf91ccbd5eb051b5371118498b6ddd908f23177155e23e5 +84277c42d1c4cce84b1804d3a08d0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000000000000000 +cleartomark +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 0 0 324 288 +%%EndPageSetup +q 0 0 324 288 rectclip q +1 g +0 0 324 288 rectfill +0.301961 g +43.156 89.582 20.629 -40.621 re f +0 g +0.75 w +1 J +1 j +[] 0.0 d +10 M 43.156 89.582 20.629 -40.621 re S +0.588235 g +43.156 99.016 20.629 -9.438 re f +0 g +43.156 99.016 20.629 -9.438 re S +0.764706 g +43.156 100.789 20.629 -1.773 re f +0 g +43.156 100.789 20.629 -1.773 re S +0.901961 g +43.156 106.215 20.629 -5.426 re f +0 g +43.156 106.215 20.629 -5.426 re S +0.301961 g +67.91 86.355 20.629 -37.395 re f +0 g +67.91 86.355 20.629 -37.395 re S +0.588235 g +67.91 104.586 20.629 -18.23 re f +0 g +67.91 104.586 20.629 -18.23 re S +0.764706 g +67.91 108.383 20.629 -3.797 re f +0 g +67.91 108.383 20.629 -3.797 re S +0.901961 g +67.91 119.219 20.629 -10.832 re f +0 g +67.91 119.219 20.629 -10.832 re S +0.301961 g +92.664 87.254 20.629 -38.293 re f +0 g +92.664 87.254 20.629 -38.293 re S +0.588235 g +92.664 122.02 20.629 -34.766 re f +0 g +92.664 122.02 20.629 -34.766 re S +0.764706 g +92.664 129.926 20.629 -7.906 re f +0 g +92.664 129.926 20.629 -7.906 re S +0.901961 g +92.664 152.469 20.629 -22.547 re f +0 g +92.664 152.469 20.629 -22.547 re S +0.301961 g +117.418 87.129 20.629 -38.168 re f +0 g +117.418 87.129 20.629 -38.168 re S +0.588235 g +117.418 162.668 20.629 -75.539 re f +0 g +117.418 162.668 20.629 -75.539 re S +0.764706 g +117.418 178.895 20.629 -16.227 re f +0 g +117.418 178.895 20.629 -16.227 re S +0.901961 g +117.418 222.398 20.629 -43.508 re f +0 g +117.418 222.398 20.629 -43.508 re S +BT +8 0 0 8 47.46875 32.239258 Tm +/f-0-0 1 Tf +[(128)-1594(256)-1595(512)-1344(1024)]TJ +ET +39.359 48.961 m 39.359 248.641 l S +39.359 48.961 m 34.559 48.961 l S +39.359 88.895 m 34.559 88.895 l S +39.359 128.832 m 34.559 128.832 l S +39.359 168.77 m 34.559 168.77 l S +39.359 208.703 m 34.559 208.703 l S +39.359 248.641 m 34.559 248.641 l S +BT +0 8 -8 0 27.280273 43.960938 Tm +/f-0-0 1 Tf +[(0.0)-3742(0.2)-3742(0.4)]TJ +14.976074 0 Td +[(0.6)-3742(0.8)-3742(1.0)]TJ +9.598633 0 0 9.598633 72.601562 265.088867 Tm +/f-1-0 1 Tf +[(OpenCL)]TJ +8 0 0 8 61.601562 13.040039 Tm +/f-0-0 1 Tf +[(W)80(a)30(vy sur)-20(f)25(ace size)]TJ +0 8 -8 0 8.081055 136.800781 Tm +[(T)20(ime, s)]TJ +ET +Q q +69 248.641 43 -48.641 re W n +1 g +69.719 248.641 41.762 -48 re f +0 g +0.75 w +1 J +1 j +[] 0.0 d +10 M 69.719 248.641 41.762 -48 re S +0.301961 g +76.922 241.441 5.762 -4.801 re f +0 g +76.922 241.441 5.762 -4.801 re S +0.588235 g +76.922 231.84 5.762 -4.801 re f +0 g +76.922 231.84 5.762 -4.801 re S +0.764706 g +76.922 222.238 5.762 -4.801 re f +0 g +76.922 222.238 5.762 -4.801 re S +0.901961 g +76.922 212.641 5.762 -4.801 re f +0 g +76.922 212.641 5.762 -4.801 re S +BT +8 0 0 8 89.878906 238.598633 Tm +/f-0-0 1 Tf +(g)Tj +5.598633 0 0 5.598633 93.878906 236.734375 Tm +(1)Tj +8 0 0 8 89.878906 229.000977 Tm +(g)Tj +5.598633 0 0 5.598633 93.878906 227.132812 Tm +(2)Tj +8 0 0 8 89.878906 217.399414 Tm +(FFT)Tj +0 -1.075195 Td +[(Cop)30(y)]TJ +ET +Q q +0.301961 g +205.156 65.391 20.629 -16.43 re f +0 g +0.75 w +1 J +1 j +[] 0.0 d +10 M 205.156 65.391 20.629 -16.43 re S +0.682353 g +205.156 65.402 20.629 -0.016 re f +0 g +205.156 65.402 20.629 -0.016 re S +0.901961 g +205.156 66.637 20.629 -1.234 re f +0 g +205.156 66.637 20.629 -1.234 re S +0.301961 g +229.91 81.566 20.629 -32.605 re f +0 g +229.91 81.566 20.629 -32.605 re S +0.682353 g +229.91 81.594 20.629 -0.027 re f +0 g +229.91 81.594 20.629 -0.027 re S +0.901961 g +229.91 83.98 20.629 -2.391 re f +0 g +229.91 83.98 20.629 -2.391 re S +0.301961 g +254.664 114.332 20.629 -65.371 re f +0 g +254.664 114.332 20.629 -65.371 re S +0.682353 g +254.664 114.395 20.629 -0.062 re f +0 g +254.664 114.395 20.629 -0.062 re S +0.901961 g +254.664 119.145 20.629 -4.75 re f +0 g +254.664 119.145 20.629 -4.75 re S +0.301961 g +279.418 198.129 20.629 -149.168 re f +0 g +279.418 198.129 20.629 -149.168 re S +0.682353 g +279.418 198.254 20.629 -0.125 re f +0 g +279.418 198.254 20.629 -0.125 re S +0.901961 g +279.418 209.266 20.629 -11.012 re f +0 g +279.418 209.266 20.629 -11.012 re S +BT +8 0 0 8 209.46875 32.239258 Tm +/f-0-0 1 Tf +[(128)-1594(256)-1595(512)-1344(1024)]TJ +ET +201.359 48.961 m 201.359 248.641 l S +201.359 48.961 m 196.559 48.961 l S +201.359 88.895 m 196.559 88.895 l S +201.359 128.832 m 196.559 128.832 l S +201.359 168.77 m 196.559 168.77 l S +201.359 208.703 m 196.559 208.703 l S +201.359 248.641 m 196.559 248.641 l S +BT +0 8 -8 0 189.280273 46.960938 Tm +/f-0-0 1 Tf +[(0)-4492(4)-4492(8)]TJ +14.726074 0 Td +[(12)-3992(16)-3992(20)]TJ +9.598633 0 0 9.598633 233.601562 265.088867 Tm +/f-1-0 1 Tf +[(OpenMP)]TJ +8 0 0 8 223.601562 13.040039 Tm +/f-0-0 1 Tf +[(W)80(a)30(vy sur)-20(f)25(ace size)]TJ +0 8 -8 0 170.081055 136.800781 Tm +[(T)20(ime, s)]TJ +ET +Q q +233 248.641 39 -38.641 re W n +1 g +233.719 248.641 37.762 -38.398 re f +Q q +233 248.641 39 -39.641 re W n +0 g +0.75 w +1 J +1 j +[] 0.0 d +10 M 233.719 248.641 37.762 -38.398 re S +0.301961 g +240.922 241.441 5.762 -4.801 re f +0 g +240.922 241.441 5.762 -4.801 re S +0.682353 g +240.922 231.84 5.762 -4.801 re f +0 g +240.922 231.84 5.762 -4.801 re S +0.901961 g +240.922 222.238 5.762 -4.801 re f +0 g +240.922 222.238 5.762 -4.801 re S +BT +8 0 0 8 253.878906 238.598633 Tm +/f-0-0 1 Tf +(g)Tj +5.598633 0 0 5.598633 257.878906 236.734375 Tm +(1)Tj +8 0 0 8 253.878906 229.000977 Tm +(g)Tj +5.598633 0 0 5.598633 257.878906 227.132812 Tm +(2)Tj +8 0 0 8 253.878906 217.399414 Tm +(FFT)Tj +ET +Q Q +showpage +%%Trailer +end restore +%%EOF