ghosthamlet / ann.apl

Simple Neural Network Examples in 8 lines APL
MIT License
30 stars 1 forks source link

Speed comparison and parallelization #2

Open lpvm opened 7 years ago

lpvm commented 7 years ago

I compared the time it takes to run both scripts, with 10000000 iteration. 1m32s for the Python version and only 29s for the J's.

If an algorithm is parallelizable, does J use all cores of a CPU?

ghosthamlet commented 7 years ago

i am beginner to J, did not manual parallelize this code, can't sure whether the code can auto parallelize, but when i monitor the 4 cpu cores usage on windows, it seems just use one core, it run fast may be as the optimized j interpreter: http://code.jsoftware.com/wiki/Guides/AVX,
and indeed J may use all cores of CPU in some situations, you can see: http://code.jsoftware.com/wiki/User:Devon_McCormick, http://code.jsoftware.com/wiki/NYCJUG/2010-03-09#Parallel-Programming_Projects_on_the_J_Wiki http://code.jsoftware.com/wiki/NYCJUG/2010-04-14/ExampleConvertingJCodetoUseMultipleCores