Hacker News new | comments | show | ask | jobs | submit login

Is there no need to tune the number of threads with an approach like this? Or is there a general notion of the appropriate number of threads given the number of CPU cores?



If you're not doing any I/O, the number of threads can be limited to the number of cores. I believe this is the default for Fork/Join.


Correct. ForkJoinPool defaults to Runtime.getRuntime().availableProcessors() threads (but can be adjusted). The reducers library (https://github.com/clojure/clojure/commit/89e5dce0fdfec4bc09...) seems to initialize the pool with the default constructor.


I believe the Java fork/join library handles this tuning automatically... so it's a freebie based on Rich Hickey's design.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: