Speed of synchronized

Christian Köstlin via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Oct 18 00:34:22 PDT 2016


On 18/10/16 07:04, Daniel Kozak via Digitalmars-d-learn wrote:
> dub run --build=release --compiler=ldc
on my machine i get the following output (using ldc2)
ldc2 --version      09:32
LDC - the LLVM D compiler (1.0.0):
  based on DMD v2.070.2 and LLVM 3.8.1
  built with LDC - the LLVM D compiler (0.17.1)
  Default target: x86_64-apple-darwin15.6.0
  Host CPU: haswell
  http://dlang.org - http://wiki.dlang.org/LDC

  Registered Targets:
    amdgcn  - AMD GCN GPUs
    arm     - ARM
    armeb   - ARM (big endian)
    nvptx   - NVIDIA PTX 32-bit
    nvptx64 - NVIDIA PTX 64-bit
    r600    - AMD GPUs HD2XXX-HD6XXX
    thumb   - Thumb
    thumbeb - Thumb (big endian)
    x86     - 32-bit X86: Pentium-Pro and above
    x86-64  - 64-bit X86: EM64T and AMD64


dub test --compiler=ldc2 (my unittest configuration now includes the
proper release flags thanks to sönke).
No source files found in configuration 'library'. Falling back to "dub
-b unittest".
Performing "unittest" build using ldc2 for x86_64.
05-threads ~master: building configuration "application"...
source/app.d(18): Deprecation: read-modify-write operations are not
allowed for shared variables. Use
core.atomic.atomicOp!"+="(this.counter, 1) instead.
source/app.d(28): Deprecation: read-modify-write operations are not
allowed for shared variables. Use
core.atomic.atomicOp!"+="(this.counter, 1) instead.
source/app.d(43): Deprecation: read-modify-write operations are not
allowed for shared variables. Use
core.atomic.atomicOp!"+="(this.counter, 1) instead.
Running ./05-threads
app.AtomicCounter: got: 1000000 expected: 1000000 in 21 ms, 692 μs, and
6 hnsecs
app.ThreadSafe1Counter: got: 1000000 expected: 1000000 in 3 secs, 909
ms, 137 μs, and 3 hnsecs
app.ThreadSafe2Counter: got: 1000000 expected: 1000000 in 3 secs, 724
ms, 201 μs, and 9 hnsecs
app.ThreadUnsafeCounter: got: 759497 expected: 1000000 in 8 ms, 841 μs,
and 9 hnsecs
from example got: 3 secs, 840 ms, 387 μs, and 2 hnsecs




looks similar to me.

thanks christian



More information about the Digitalmars-d-learn mailing list