Thanks Alan, looking into it.
By the way, fold function has [n combinef reducef coll] implementation, 
where n is number of elements collection is folded by. 512 is just the 
default.

On Saturday, April 27, 2013 3:51:39 PM UTC+3, Alan Busby wrote:
>
> On Sat, Apr 27, 2013 at 7:35 PM, Stanislav Yurin 
> <jus...@gmail.com<javascript:>
> > wrote:
>
>> Actually, what I was trying to do, is to prototype multithreaded i/o 
>> operation via reducers. And then use fold to regulate number of concurrent 
>> operations.
>> But now something tells me I am doing not very clever thing.
>>
>
> I'm not entirely sure what you mean above, but I've been very happy using 
> reducers with I/O so far.
>
> Reducers just have a few tricks you need to be aware of first;
> 1. You wont get parallel processing unless the input is a vector.
> 2. Each thread gets ~512 elements each, so reducing a vector of 800 
> elements will only use two cores. 
> 3. How you aggregate your final result can greatly impact performance. 
> (Ex. (r/fold +) is fast, fold-into-vec is slower, etc)
>
> I wrote a library to use reducers over text files (input) and have found 
> it to be invaluable for working with giant TSV files.
> Link: https://github.com/thebusby/iota/
>
> I often then use fold-into-lazy-seq to write the output back to a file.
> Link: https://gist.github.com/thebusby/5472980
>
> Hope this helps! ;)
>

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to