search for: number_of_threads

Displaying 9 results from an estimated 9 matches for "number_of_threads".

2009 Oct 17
1
Are there any current, in play plans, to multi-thread rsync?
I am looking for an enhancement to multi-thread or parallelize rsync. Are there any plans that would allow one to set a parameter, like 'number_of_threads' and rsync will ship multiple files at the same time? Sincerely, Brian P Michael Technical Management Consultant Rolta TUSC, Inc. michaelb at tusc.com 630-960-2909 x1181 http://www.tusc.com <http://www.tusc.com/> The information contained in this transmission is privi...
2014 Apr 17
2
[LLVMdev] multithreaded performance disaster with -fprofile-instr-generate (contention on profile counters)
...> essentially zero cost. I would have a global number of shards that changes > rarely, and re-compute it on entry to each function with something along the > lines of: > > if (thread-ID != main's thread-ID && shard_count == 1) { >   shard_count = std::min(MAX, std::max(NUMBER_OF_THREADS, NUMBER_OF_CORES)); >   // if shard_count changed with this, we can also call a library routine here > that does the work of allocating the actual extra shards. > } Is it possible to hook on something more clever than function entry? Choosing to do this based on thread creation or somethi...
2014 Apr 18
4
[LLVMdev] multithreaded performance disaster with -fprofile-instr-generate (contention on profile counters)
...pr 17, 2014 at 1:27 PM, Justin Bogner <mail at justinbogner.com> wrote: > Chandler Carruth <chandlerc at google.com> writes: > > if (thread-ID != main's thread-ID && shard_count < std::min(MAX, NUMBER_OF_CORES)) { > > shard_count = std::min(MAX, std::max(NUMBER_OF_THREADS, NUMBER_OF_CORES)); > > // if shard_count changed with this, we can also call a library routine here > > that does the work of allocating the actual extra shards. > > } > > Note, I had a bug here. The first time I had this only grow the shard count once, and later thought...
2014 Apr 18
2
[LLVMdev] multithreaded performance disaster with -fprofile-instr-generate (contention on profile counters)
...ry consumption for systems (and amount of RAM!) is > O(NCORES), not O(1). In some read-mostly cases it's possible to achieve > O(1) memory consumption, and that's great. But if it's not the case here, > let it be so. > > > > > shard_count = std::min(MAX, std::max(NUMBER_OF_THREADS, NUMBER_OF_CORES)) > > Threads do not produce contention, it's cores that produce contention. > The formula must be: shard_count = k*NCORES > And if you want less memory in single-threaded case, then: shard_count = > min(k*NCORES, c*NTHREADS) > > > > >We are talki...
2014 Apr 17
9
[LLVMdev] multithreaded performance disaster with -fprofile-instr-generate (contention on profile counters)
Hi, The current design of -fprofile-instr-generate has the same fundamental flaw as the old gcc's gcov instrumentation: it has contention on counters. A trivial synthetic test case was described here: http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-October/066116.html For the problem to appear we need to have a hot function that is simultaneously executed by multiple threads -- then we will
2014 Apr 18
2
[LLVMdev] multithreaded performance disaster with -fprofile-instr-generate (contention on profile counters)
...gt;> O(NCORES), not O(1). In some read-mostly cases it's possible to achieve >>> O(1) memory consumption, and that's great. But if it's not the case here, >>> let it be so. >>> >>> >>> >>> > shard_count = std::min(MAX, std::max(NUMBER_OF_THREADS, >>> NUMBER_OF_CORES)) >>> >>> Threads do not produce contention, it's cores that produce contention. >>> The formula must be: shard_count = k*NCORES >>> And if you want less memory in single-threaded case, then: shard_count = >>> min(k*NCO...
2011 Sep 12
0
[LLVMdev] multi-threading in llvm
Hi Alexandra, I don't know much, maybe this topic should be bridged with polly-dev (adding it to CC) to bring it more attention. Indeed, polly uses ScopPass, that creates serious limitations in compatibility with other passes. To my understanding, scops are used because ISL loop analysis tool uses scops. In fact, just for handling OpenMP directives scops are not required, unless one need to
2014 Apr 17
2
[LLVMdev] multithreaded performance disaster with -fprofile-instr-generate (contention on profile counters)
...> essentially zero cost. I would have a global number of shards that changes > rarely, and re-compute it on entry to each function with something along > the lines of: > > if (thread-ID != main's thread-ID && shard_count == 1) { > shard_count = std::min(MAX, std::max(NUMBER_OF_THREADS, > NUMBER_OF_CORES)); > // if shard_count changed with this, we can also call a library routine > here that does the work of allocating the actual extra shards. > } > > MAX is a fixed cap so even on systems with 100s of cores we don't do > something silly. NUBER_OF_THREAD...
2011 Sep 08
4
[LLVMdev] multi-threading in llvm
Hi, I want to execute the iterations of a loop in parallel, by inserting calls either to pthreads or to the gomp library at the LLVM IR level. As a first step, I inserted an omp pragma in a C file and compiled it with llvm-gcc to check the generated LLVM code. If I understand correctly, to parallelize the loop in LLVM IR, I have to separate the loop in a new function, put all required parameters