[DGD] Hydra

Blain blain20 at gmail.com
Wed Aug 22 06:45:29 CEST 2018


:: Intel Core i7-8750H CPU @2.20 GHz 2.21; 16.0 GB RAM; 64-bit OS, x64-based
:: processor; Windows 10 Home; Cygwin 64-bit

:: hydra-1.3.12-win32-i386
> /home/Blade/ben2/hydra-1.3.12.exe -1 test.dgd
Hydra 1.3.12 Limited Edition, http://www.dworkin.nl/hydra/
Copyright 2009-2018 Dworkin B.V.  All rights reserved.

Booting Hydra 1.3.12
Test object loaded
Population: 10000
Senders: 100
Recipients: 100
Delay: 0
Rounds: 10
Event: 1

1 recipient in 0.114
2 recipients in 0.139
3 recipients in 0.150
4 recipients in 0.154
5 recipients in 0.166
6 recipients in 0.183
7 recipients in 0.200
8 recipients in 0.214
9 recipients in 0.228
10 recipients in 0.239
11 recipients in 0.259
12 recipients in 0.269
13 recipients in 0.303
14 recipients in 0.304
15 recipients in 0.319
16 recipients in 0.336
17 recipients in 0.348
18 recipients in 0.359
19 recipients in 0.382
20 recipients in 0.390
21 recipients in 0.400
22 recipients in 0.415
23 recipients in 0.437
24 recipients in 0.445
25 recipients in 0.450
26 recipients in 0.477
27 recipients in 0.495
28 recipients in 0.515
29 recipients in 0.515
30 recipients in 0.541
31 recipients in 0.553
32 recipients in 0.618
33 recipients in 0.618
34 recipients in 0.616
35 recipients in 0.637
36 recipients in 0.678
37 recipients in 0.647
38 recipients in 0.647
39 recipients in 0.663
40 recipients in 0.686
41 recipients in 0.685
42 recipients in 0.717
43 recipients in 0.717
44 recipients in 0.743
45 recipients in 0.763
46 recipients in 0.766
47 recipients in 0.797
48 recipients in 0.808
49 recipients in 0.808
50 recipients in 0.821
51 recipients in 0.843
52 recipients in 0.859
53 recipients in 0.874
54 recipients in 0.891
55 recipients in 0.915
56 recipients in 1.055
57 recipients in 1.047
58 recipients in 1.051
59 recipients in 1.096
60 recipients in 1.013
61 recipients in 1.385
62 recipients in 1.076
63 recipients in 1.141
64 recipients in 1.185
65 recipients in 1.507
66 recipients in 2.702
67 recipients in 2.699
68 recipients in 2.655
69 recipients in 2.123
70 recipients in 2.633
71 recipients in 3.047
72 recipients in 2.909
73 recipients in 2.405
74 recipients in 2.578
75 recipients in 2.320
76 recipients in 2.771
77 recipients in 2.974
78 recipients in 3.100
79 recipients in 3.484
80 recipients in 3.214
81 recipients in 3.248
82 recipients in 3.379
83 recipients in 3.516
84 recipients in 3.352
85 recipients in 3.377
86 recipients in 3.439
87 recipients in 3.733
88 recipients in 3.505
89 recipients in 3.819
90 recipients in 3.961
91 recipients in 3.713
92 recipients in 3.663
93 recipients in 3.769
94 recipients in 3.737
95 recipients in 3.877
96 recipients in 3.986
97 recipients in 3.990
98 recipients in 3.876
99 recipients in 3.921
100 recipients in 4.300

= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = -
= -

:: hydra-1.3.12-win32-i386
> /home/Blade/ben2/hydra-1.3.12.exe -2 test.dgd
Hydra 1.3.12 Limited Edition, http://www.dworkin.nl/hydra/
Copyright 2009-2018 Dworkin B.V.  All rights reserved.

Booting Hydra 1.3.12
Test object loaded
Population: 10000
Senders: 100
Recipients: 100
Delay: 0
Rounds: 10
Event: 1

1 recipient in 0.064
2 recipients in 0.071
3 recipients in 0.082
4 recipients in 0.096
5 recipients in 0.101
6 recipients in 0.104
7 recipients in 0.114
8 recipients in 0.120
9 recipients in 0.126
10 recipients in 0.136
11 recipients in 0.142
12 recipients in 0.151
13 recipients in 0.163
14 recipients in 0.171
15 recipients in 0.176
16 recipients in 0.188
17 recipients in 0.197
18 recipients in 0.195
19 recipients in 0.207
20 recipients in 0.215
21 recipients in 0.231
22 recipients in 0.238
23 recipients in 0.236
24 recipients in 0.245
25 recipients in 0.247
26 recipients in 0.264
27 recipients in 0.270
28 recipients in 0.271
29 recipients in 0.290
30 recipients in 0.294
31 recipients in 0.311
32 recipients in 0.311
33 recipients in 0.325
34 recipients in 0.347
35 recipients in 0.640
36 recipients in 0.669
37 recipients in 0.661
38 recipients in 0.680
39 recipients in 0.713
40 recipients in 0.737
41 recipients in 0.732
42 recipients in 0.725
43 recipients in 0.760
44 recipients in 0.793
45 recipients in 0.756
46 recipients in 0.795
47 recipients in 0.851
48 recipients in 0.826
49 recipients in 0.864
50 recipients in 0.857
51 recipients in 0.884
52 recipients in 0.909
53 recipients in 0.920
54 recipients in 0.930
55 recipients in 0.917
56 recipients in 0.949
57 recipients in 0.962
58 recipients in 0.980
59 recipients in 0.992
60 recipients in 1.047
61 recipients in 1.032
62 recipients in 1.064
63 recipients in 1.052
64 recipients in 1.076
65 recipients in 1.115
66 recipients in 1.109
67 recipients in 1.138
68 recipients in 1.174
69 recipients in 1.173
70 recipients in 1.139
71 recipients in 1.190
72 recipients in 1.191
73 recipients in 1.240
74 recipients in 1.206
75 recipients in 1.266
76 recipients in 1.277
77 recipients in 1.294
78 recipients in 1.080
79 recipients in 1.002
80 recipients in 1.145
81 recipients in 1.117
82 recipients in 1.084
83 recipients in 1.197
84 recipients in 1.303
85 recipients in 1.288
86 recipients in 1.261
87 recipients in 1.299
88 recipients in 1.330
89 recipients in 1.320
90 recipients in 1.366
91 recipients in 1.382
92 recipients in 1.394
93 recipients in 1.388
94 recipients in 1.403
95 recipients in 1.417
96 recipients in 1.451
97 recipients in 1.491
98 recipients in 1.696
99 recipients in 1.706
100 recipients in 1.708

= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = -
= -

:: hydra-1.3.12-win32-i386
> /home/Blade/ben2/hydra-1.3.12.exe -4 test.dgd
Hydra 1.3.12 Limited Edition, http://www.dworkin.nl/hydra/
Copyright 2009-2018 Dworkin B.V.  All rights reserved.

Booting Hydra 1.3.12
Test object loaded
Population: 10000
Senders: 100
Recipients: 100
Delay: 0
Rounds: 10
Event: 1

1 recipient in 0.039
2 recipients in 0.040
3 recipients in 0.043
4 recipients in 0.053
5 recipients in 0.057
6 recipients in 0.069
7 recipients in 0.063
8 recipients in 0.068
9 recipients in 0.071
10 recipients in 0.075
11 recipients in 0.082
12 recipients in 0.088
13 recipients in 0.093
14 recipients in 0.098
15 recipients in 0.105
16 recipients in 0.110
17 recipients in 0.109
18 recipients in 0.112
19 recipients in 0.117
20 recipients in 0.123
21 recipients in 0.122
22 recipients in 0.133
23 recipients in 0.132
24 recipients in 0.139
25 recipients in 0.148
26 recipients in 0.152
27 recipients in 0.160
28 recipients in 0.162
29 recipients in 0.166
30 recipients in 0.169
31 recipients in 0.176
32 recipients in 0.190
33 recipients in 0.182
34 recipients in 0.188
35 recipients in 0.197
36 recipients in 0.197
37 recipients in 0.206
38 recipients in 0.208
39 recipients in 0.211
40 recipients in 0.220
41 recipients in 0.222
42 recipients in 0.226
43 recipients in 0.241
44 recipients in 0.237
45 recipients in 0.244
46 recipients in 0.248
47 recipients in 0.251
48 recipients in 0.262
49 recipients in 0.267
50 recipients in 0.274
51 recipients in 0.270
52 recipients in 0.283
53 recipients in 0.284
54 recipients in 0.288
55 recipients in 0.301
56 recipients in 0.300
57 recipients in 0.308
58 recipients in 0.313
59 recipients in 0.324
60 recipients in 0.319
61 recipients in 0.333
62 recipients in 0.333
63 recipients in 0.341
64 recipients in 0.354
65 recipients in 0.367
66 recipients in 0.383
67 recipients in 0.389
68 recipients in 0.388
69 recipients in 0.398
70 recipients in 0.397
71 recipients in 0.403
72 recipients in 0.412
73 recipients in 0.410
74 recipients in 0.421
75 recipients in 0.424
76 recipients in 0.431
77 recipients in 0.434
78 recipients in 0.443
79 recipients in 0.453
80 recipients in 0.449
81 recipients in 0.452
82 recipients in 0.461
83 recipients in 0.478
84 recipients in 0.474
85 recipients in 0.480
86 recipients in 0.488
87 recipients in 0.492
88 recipients in 0.497
89 recipients in 0.499
90 recipients in 0.512
91 recipients in 0.512
92 recipients in 0.525
93 recipients in 0.514
94 recipients in 0.536
95 recipients in 0.534
96 recipients in 0.546
97 recipients in 0.553
98 recipients in 0.558
99 recipients in 0.562
100 recipients in 0.566

= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = -
= -

:: Note:

- I receive a segfault after each run on both my mini laptop and this gaming
  laptop, in case this matters to you at all.
  GDB output:

Thread 6 received signal SIGSEGV, Segmentation fault.
[Switching to Thread 13728.0x1880]
0x0000002b in ?? ()

= - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = - = -
= -

> cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 0
cpu cores : 6
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 0
cpu cores : 6
apicid : 1
initial apicid : 1
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 2
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 1
cpu cores : 6
apicid : 2
initial apicid : 2
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 1
cpu cores : 6
apicid : 3
initial apicid : 3
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 4
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 2
cpu cores : 6
apicid : 4
initial apicid : 4
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 5
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 2
cpu cores : 6
apicid : 5
initial apicid : 5
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 6
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 3
cpu cores : 6
apicid : 6
initial apicid : 6
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 7
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 3
cpu cores : 6
apicid : 7
initial apicid : 7
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 8
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 4
cpu cores : 6
apicid : 8
initial apicid : 8
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 9
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 4
cpu cores : 6
apicid : 9
initial apicid : 9
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 10
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 5
cpu cores : 6
apicid : 10
initial apicid : 10
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:

processor : 11
vendor_id : GenuineIntel
cpu family : 6
model : 158
model name : Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
stepping : 10
cpu MHz : 2208.000
cache size : 256 KB
physical id : 0
siblings : 12
core id : 5
cpu cores : 6
apicid : 11
initial apicid : 11
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni dtes64 monitor
ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm sse4_1 sse4_2 x2apic movbe
popcnt aes xsave osxsave avx f16c rdrand lahf_lm ida arat epb xsaveopt pln
pts dtherm fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed
adx smap clflushopt
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:


On Tue, Aug 21, 2018 at 7:20 AM, <bart at wotf.org> wrote:

> As an aside, the Linux amd64 archive on the hydra download site has a .zip
> extension, but it is a tar.gz file.
>
> Bart.
>
> On Mon, 20 Aug 2018 00:18:53 +0200, Felix A. Croes wrote
> > Today I released Hydra version 1.3.12.
> >
> > I have been working on DGD since 1992, and on Hydra since 2002.  Although
> > DGD muds peaked around 2005, I think there is still a case for LPC
> > as a programming language, for error handling with atomic functions,
> > for the event-driven model (it has been fun to watch the node.js
> > folks rediscover old LPmud wisdom), and for object-oriented database
> > management systems. So I continued developing DGD as a hobby after
> > it stopped being my day job.
> >
> > Hydra was born from the realisation that DGD's event-driven tasks
> > could be parallelized: let multiple tasks run concurrently on copies
> > of objects, and when they finish, commit the changes when the objects
> > have not been modified by any other task in the meanwhile; otherwise,
> > lob off a Hydra's head (discard the task's changes) and let it grow
> > back (reschedule the task to try again).
> >
> > What makes this especially interesting is that to the LPC developer,
> > the concurrent execution of tasks is invisible, and it appears that tasks
> > are still run in sequence because the commits are serial.  The
> > complex machinery of parallelization is hidden from view.
> >
> > Of course, the machinery of parallelization was not hidden from my view.
> > Developing Hydra has been a very time-consuming hobby.  For the past
> > two years, I have been working on optimizing the locking
> > architecture, culminating in today's release.  The multiple CPU,
> > multi-core future that I expected in 2002 has definitely arrived.
> > Hydra is well suited to take advantage of the modern multi-core CPU
> architecture.
> >
> > Not on all CPUs, however.  As far as Hydra is concerned, hyper-threading
> > is a mis-feature.  Any type of feature sharing between hardware threads
> > or cores is likely detrimental.  Other features, such as "turbo boost"
> > (increasing single-core performance when no other cores are in use)
> >  complicate measuring the benefits of multi-core execution
> > accurately. Furthermore, Hydra has been hard hit by this year's
> > speculative execution bugs.  The mitigations for Meltdown, Spectre
> > et al slow it down considerably.
> >
> > Additionally, Hydra does not perform equally well on all operating
> systems.
> > I have been using macOS as my main development system; unfortunately,
> > Hydra scales abysmally on macOS.  I have run some tests on a 2008-
> > era dual CPU system with a total of 8 cores, which thankfully lacks
> > hyper-threading and a host of other features that modern CPUs are
> > often blessed with.  I see that Hydra scales well on Windows 10 and
> > Solaris 10, but when using 4 or more threads dedicated to running
> > LPC tasks, Linux is slightly faster. Interestingly, with fewer than
> > 4 threads dedicated to LPC tasks, Linux is much faster than other
> > operating systems I tested.  Overall, I see best performance on
> > Linux kernels without speculative execution bug mitigations.
> >
> > Since testing on a 10 year old system is hardly definitive, I want
> > to ask for volunteers to test Hydra on such modern systems as they
> > have available. The test should be run on bare hardware.  Running it
> > virtualized slows down Hydra a lot, and is also likely to have a
> > large impact on other VMs running on the same hardware.
> >
> > The test itself is simple.  Download Hydra from
> >
> >     http://download.dworkin.nl/hydra/
> >
> > and the test from
> >
> >     http://download.dworkin.nl/hydra/benchmarks/bm002.zip
> >
> > Edit test.dgd from bm002 to let the base directory point to wherever
> > you put bm002/src, and run Hydra specifying the number of threads
> dedicated
> > to LPC tasks, for example:
> >
> >     hydra-1.3.12 -1 test.dgd > test-1
> >     hydra-1.3.12 -2 test.dgd > test-2
> >     hydra-1.3.12 -4 test.dgd > test-4
> >
> > Then post the results, plus CPU information (/proc/cpuinfo on Linux)
> > to the mailing list.
> >
> > Test results for more than 4 cores are especially interesting.
> >  Hydra runs more threads internally than are used for LPC, and you
> > should leave some room for the other OS tasks, so tests up to the
> > number of cores minus two are meaningful.  If your system has
> > hyperthreading, divide the number of "cores" reported in
> > /proc/cpuinfo by Linux by 2.
> >
> > The benchmark is synthetic and does not test Hydra's true
> > performance; rather, it attempts to measure the performance of
> > Hydra's locking architecture.
> >
> > Regards,
> > Felix Croes
> > ____________________________________________
> > https://mail.dworkin.nl/mailman/listinfo/dgd
>
>
> --
> https://www.bartsplace.net/
> https://wotf.org/
> https://www.flickr.com/photos/mrobjective/
>
> ____________________________________________
> https://mail.dworkin.nl/mailman/listinfo/dgd
>



More information about the DGD mailing list