Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,24 @@
|
|||
import std.stdio;
|
||||
import std.parallelism: taskPool, defaultPoolThreads, totalCPUs;
|
||||
|
||||
void buildMechanism(uint nparts) {
|
||||
auto details = new uint[nparts];
|
||||
foreach (i, ref detail; taskPool.parallel(details)) {
|
||||
writeln("Build detail ", i);
|
||||
detail = i;
|
||||
}
|
||||
|
||||
// This could be written more concisely via std.parallelism.reduce,
|
||||
// but we want to see the checkpoint explicitly.
|
||||
writeln("Checkpoint reached. Assemble details ...");
|
||||
uint sum = 0;
|
||||
foreach (immutable detail; details)
|
||||
sum += detail;
|
||||
writeln("Mechanism with ", nparts, " parts finished: ", sum);
|
||||
}
|
||||
|
||||
void main() {
|
||||
defaultPoolThreads = totalCPUs + 1; // totalCPUs - 1 on default.
|
||||
buildMechanism(42);
|
||||
buildMechanism(11);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue