This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
notes:comporg:projects:pnc2 [2018/02/06 21:45] – [Matthew Chon pnc2 Data Visualization (February 6th, 2018):] mchon | notes:comporg:projects:pnc2 [2018/02/11 16:50] (current) – [Benjamin Schultes PNC1:] wedge | ||
---|---|---|---|
Line 150: | Line 150: | ||
==== Matthew Chon pnc2 Data Visualization (February 6th, 2018): ==== | ==== Matthew Chon pnc2 Data Visualization (February 6th, 2018): ==== | ||
- | {{: | + | |
+ | {{: | ||
+ | ===graph=== | ||
< | < | ||
qty bash clang g++ gcc gccO0 gccO1 gccO2 gccO3 gccOs itccc java js | qty bash clang g++ gcc gccO0 gccO1 gccO2 gccO3 gccOs itccc java js | ||
- | 128 1.180 0 0 0 0 0 0 0 0 0 0.068 0.009 | + | ======================================================================================================= |
- | 256 2.545 0 0 0 0 0 0 0 0 0 0.058 0.011 | + | 128 1.180 |
- | 512 5.843 0.001 0.001 0 0 0 0 0 0 0 0.066 0.016 | + | 256 2.545 |
- | 1024 13.298 0.002 0.002 0.001 0.001 0.001 0.001 0.001 0.001 0.001 0.075 0.018 | + | 512 5.843 |
- | 2048 29.695 0.004 0.004 0.003 0.003 0.002 0.002 0.001 0.002 0.004 0.119 0.022 | + | 1024 |
- | 4096 ---- 0.006 0.012 0.008 0.008 0.005 0.004 0.004 0.005 0.01 0.115 0.03 | + | 2048 |
- | 8192 ---- 0.017 0.031 0.023 0.023 0.012 0.011 0.011 0.015 0.028 0.137 0.048 | + | 4096 |
- | 16384 ---- 0.047 0.087 0.063 0.063 0.032 0.029 0.027 0.04 0.078 0.203 0.089 | + | 8192 |
- | 32768 ---- 0.13 0.243 0.176 0.176 0.088 0.08 0.076 0.111 0.22 0.366 0.187 | + | 16384 ---- 0.047 0.087 0.063 0.063 0.032 0.029 0.027 0.040 0.078 0.203 0.089 |
- | 65536 ---- 0.364 0.686 0.499 0.497 0.262 0.221 0.2 0.307 0.624 0.701 0.448 | + | 32768 ---- 0.130 0.243 0.176 0.176 0.088 0.080 0.076 0.111 0.220 0.366 0.187 |
- | 131072 ---- 1.023 ---- ---- ---- 0.674 0.612 0.551 0.867 ---- ---- 1.077 | + | 65536 ---- 0.364 0.686 0.499 0.497 0.262 0.221 0.200 0.307 0.624 0.701 0.448 |
- | 262144 ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- | + | 131072 ---- 1.023 ---- ---- ---- 0.674 0.612 0.551 0.867 ---- |
+ | 262144 ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- ---- | ||
</ | </ | ||
**Analysis**: | **Analysis**: | ||
- | As shown in the graph and chart, the C implemented pncs went the farthest | + | As shown in the graph and chart, the C implemented pncs destroyed |
- | ==== ==== | + | |
+ | ====Benjamin Schultes PNC1:==== | ||
+ | ===All Scripts=== | ||
+ | {{: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | {{: | ||
+ | |||
+ | As expected, the C programs outperformed all other scripts. There isn't a lot of data shown on the chart because many of the C programs had very similar run times. | ||
+ | |||
+ | < | ||
+ | qty bash gcc gccO0 gccO1 gccO2 gccO3 gccOs go lua python3 ruby | ||
+ | 64 1.018 0 0 0 0 0 0 0 0 0.001 0 | ||
+ | 128 0 0 0 0 0 0 0 0.001 0.002 0.001 | ||
+ | 256 0 0 0 0 0 0 0 0.002 0.007 0.002 | ||
+ | 512 0 0 0 0 0 0 0.001 0.006 0.019 0.007 | ||
+ | 1024 0.001 0.001 0.001 0.001 0.001 0.001 0.002 0.018 0.056 0.02 | ||
+ | 2048 0.003 0.003 0.002 0.002 0.002 0.003 0.005 0.044 0.155 0.056 | ||
+ | 4096 0.008 0.008 0.007 0.007 0.007 0.008 0.012 0.123 0.451 0.162 | ||
+ | 8192 0.023 0.023 0.019 0.019 0.019 0.023 0.033 0.36 0.454 | ||
+ | 16384 0.065 0.065 0.052 0.052 0.055 0.065 0.091 1.003 1.312 | ||
+ | 32768 0.183 0.183 0.145 0.145 0.145 0.182 0.254 | ||
+ | 65536 0.517 0.517 0.409 0.408 0.408 0.516 0.714 | ||
+ | 131072 1.156 1.154 1.154 | ||
+ | </ | ||
+ | |||
+ | ====Christian Cattell pnc2==== | ||
+ | |||
+ | |||
+ | {{: | ||
+ | |||
+ | < | ||
+ | | ||
+ | bash g++ | ||
+ | ================================================================================================ | ||
+ | 128 1.169 | ||
+ | 256 | ||
+ | 512 | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | 16384 | ||
+ | 32768 | ||
+ | 65536 | ||
+ | | ||
+ | </ | ||
+ | |||
+ | ==Thoughts== | ||
+ | Bash is really, really bad actually. Makes you wonder just how much is really going on when you run it. I expect js to run the worst of the bunch (minus bash) so that surprised me. When making | ||
+ | |||
+ | As for writing everything, it was actually not as bad as I thought it would be. Core concepts translate really well to other languages. It is interesting to see the differences in the languages, but they are seemingly just syntactical. This is just referring to the basic stuff like loops and conditionals etc. Probably start to see larger differences as you get to more advanced parts of a language. | ||
+ | |||
+ | ====Kris Beykirch (kbeykirc)==== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ==Reflections== | ||
+ | |||
+ | The first thing that has to be said is that bash is simply | ||
+ | |||
+ | Next best after python is lua, and then ruby, which are all in a roughly comparable group. Go improves quite a bit timewise, and outstripping all are the C programs. itcc and tcc perform ever so slightly worse than the gcc variants, but compared to the distance between go and itcc/tcc, the distance between itcc/tcc and gcc are pretty minimal. | ||
+ | |||
+ | General trend seems to be that the higher the language level, the worse the performance is. This makes sense, since there’s more overhead, and the language isn’t necessarily well designed for heavy computation (bash is certainly not made for this, a warning | ||
+ | |||
+ | The trade-off, though, is that some of the higher-level languages | ||
+ | |||
+ | ====Kevin Todd (ktodd3)==== | ||
+ | For PNC1 I ended up using PrimeregB instead which gave some different results compared to the others who used Primeregbs | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ==Thoughts: | ||
+ | |||
+ | I was surprised by the results of my testing as Java and GO seemed to beat out the others, I expected the C++ to be the most efficient as it is a higher level language. Python was the least efficient which in hind sight isn't very surprising at it was rather easy to use would could mean it's a lower level language but it being ' | ||
+ | |||
+ | {{: |