Comments (18)
sorry, the title should be "unreasonable multiple-core Whetstone results"
Original comment by [email protected]
on 5 Dec 2014 at 2:40
from byte-unixbench.
I assume this has got to do with how the measurement is done. Just raised the
same issue. I changed the flags passed to compiler and it fixed the problem.
Could you kindly try the same?
Instead of -DUNIX , kindly use -DGTODay so that it uses wall clock time instead
of process cpu time.
Thanks.
Original comment by [email protected]
on 30 Mar 2015 at 1:11
from byte-unixbench.
tested in OS X, 4C8T, (not idle). looks it still uses process cpu time.
1: 1004.1
2: 1951.8
4: 3887.8
8: 6794.8
Original comment by [email protected]
on 30 Mar 2015 at 2:41
from byte-unixbench.
I tried now and I see it is working fine.
DUNIX:
Benchmark Run: Mon Mar 30 2015 21:48:04 - 21:48:19
4 CPUs in system; running 1 parallel copy of tests
Double-Precision Whetstone 4203.4 MWIPS (9.7 s, 1 samples)
System Benchmarks Partial Index BASELINE RESULT INDEX
Double-Precision Whetstone 55.0 4203.4 764.3
========
System Benchmarks Index Score (Partial Only) 764.3
------------------------------------------------------------------------
Benchmark Run: Mon Mar 30 2015 21:48:19 - 21:48:36
4 CPUs in system; running 4 parallel copies of tests
Double-Precision Whetstone 13725.4 MWIPS (9.9 s, 1 samples)
System Benchmarks Partial Index BASELINE RESULT INDEX
Double-Precision Whetstone 55.0 13725.4 2495.5
========
System Benchmarks Index Score (Partial Only) 2495.5
------------------------------------------------------------------------
Benchmark Run: Mon Mar 30 2015 21:48:36 - 21:49:05
4 CPUs in system; running 8 parallel copies of tests
Double-Precision Whetstone 27433.0 MWIPS (9.9 s, 1 samples)
System Benchmarks Partial Index BASELINE RESULT INDEX
Double-Precision Whetstone 55.0 27433.0 4987.8
========
System Benchmarks Index Score (Partial Only) 4987.8
DGTODay:
Benchmark Run: Mon Mar 30 2015 21:51:08 - 21:51:24
4 CPUs in system; running 1 parallel copy of tests
Double-Precision Whetstone 4293.7 MWIPS (10.0 s, 1 samples)
System Benchmarks Partial Index BASELINE RESULT INDEX
Double-Precision Whetstone 55.0 4293.7 780.7
========
System Benchmarks Index Score (Partial Only) 780.7
------------------------------------------------------------------------
Benchmark Run: Mon Mar 30 2015 21:51:24 - 21:51:40
4 CPUs in system; running 4 parallel copies of tests
Double-Precision Whetstone 13406.6 MWIPS (9.9 s, 1 samples)
System Benchmarks Partial Index BASELINE RESULT INDEX
Double-Precision Whetstone 55.0 13406.6 2437.6
========
System Benchmarks Index Score (Partial Only) 2437.6
------------------------------------------------------------------------
Benchmark Run: Mon Mar 30 2015 21:51:40 - 21:51:55
4 CPUs in system; running 8 parallel copies of tests
Double-Precision Whetstone 14167.5 MWIPS (9.3 s, 1 samples)
System Benchmarks Partial Index BASELINE RESULT INDEX
Double-Precision Whetstone 55.0 14167.5 2575.9
========
System Benchmarks Index Score (Partial Only) 2575.9
Original comment by [email protected]
on 30 Mar 2015 at 4:23
from byte-unixbench.
Since you mentioned 8 threads, could you try with 16 copies and with both the
timing options to see how the numbers look like?
Original comment by [email protected]
on 30 Mar 2015 at 4:23
from byte-unixbench.
Forgot to mention additional information. My laptop had 2C4T.. so.. 4T should
be the max for any throughput scaling..
Original comment by [email protected]
on 30 Mar 2015 at 4:25
from byte-unixbench.
This works for me. I made tests using Arch Linux on:
Intel(R) Xeon(R) CPU W3530 (4 cores, HT)
ARM Cortex A8 (one core)
ARM Cortex A7 (dual core)
I don't have any Mac to test, maybe you may try -DMAC ? You can see the options
at src/whets.c at "Timer options".
Thanks.
Original comment by [email protected]
on 30 Mar 2015 at 4:30
from byte-unixbench.
Mac OS also should support gettimeofday( ). Could you kindly try increasing the
number of copies to be beyond the number of cpu threads and test the same?
Original comment by [email protected]
on 30 Mar 2015 at 5:01
from byte-unixbench.
[deleted comment]
from byte-unixbench.
[deleted comment]
from byte-unixbench.
tried -DMAC, and -DMAC_TMgr
-DMAC_TMgr won't even compile, "Timer.h" not found, maybe that's for older PPC
Macs.
result of -DMAC on 4C8T OS X (problem seems not solved, and new problem
introduced.)
Original comment by [email protected]
on 31 Mar 2015 at 4:50
Attachments:
from byte-unixbench.
and tested -DGTODay in
Linux ... 3.16.0-4-686-pae #1 SMP Debian 3.16.7-ckt4-3 (2015-02-03) i686
GNU/Linux
(already patched 'volatile unsigned long iter;')
got this error:
1 x Arithoh 1 2 3Can't take log of -2.93709e+07 at ./Run line 935.
is the timing done by Perl script 'Run' ?
Original comment by [email protected]
on 31 Mar 2015 at 4:55
from byte-unixbench.
Could you kindly clarify the following? I assume the initial issue reported was
with whetstone. Did you try -DGTODay with whetstone? What was the results with
multiple copies ( > 8 copies ).
arith.c uses a different method for measuring time. From your previous results
arithmetic is working properly.
Original comment by [email protected]
on 31 Mar 2015 at 5:46
from byte-unixbench.
hmm, looks like solved.
though the score of >4 copies is much higher than what I expected.
Thanks!
Original comment by [email protected]
on 31 Mar 2015 at 9:45
Attachments:
from byte-unixbench.
-DGTODay also works well in linux.
Original comment by [email protected]
on 1 Apr 2015 at 4:42
from byte-unixbench.
A comment in the code suggests that rusage() is preferred over gettimeofday(), but various github issues report that wall clock time of gettimeofday() is preferred.
Suggested solution is to modify Makefile
$(PROGDIR)/whetstone-double: CFLAGS += -DDP -DUNIX -DUNIXBENCH
to replace -DUNIX
with -DGTODay
from byte-unixbench.
#15, #18, #26 all seem to be the same issue.
@kdlucas: simple fix suggested above. Would you prefer a new pull request?
from byte-unixbench.
Yes, can we get a new pull request for this issue?
from byte-unixbench.
Related Issues (20)
- exit the test program when execute multi parallel copies of tests, why? HOT 3
- I wanna use unixbench to test my own libm. HOT 3
- Run: "Execl Throughput": *** buffer overflow detected ***: terminated; aborting HOT 2
- -q option unsupported, using clang on MacOS HOT 2
- where could be found that ubgears program? HOT 2
- some problems on Ubuntu 20.04 HOT 1
- parallel copies of tests greater than 16, exit directly HOT 1
- Does not compile on RISC-V HOT 1
- unable to run Unixbench on my server HOT 4
- /home/uos/UnixBench/pgms/ubgears:not found;aborting HOT 1
- "Pipe-based Context Switching" sometimes parent and child process will run on the same CPU HOT 1
- Could we allocate unique fd for each parallel in Unixbench - syscall? HOT 1
- Improve the scalability of fstime HOT 2
- execl: as the degree of parallelism increases, osq_lock becomes a bottleneck HOT 1
- Is this project an official project? HOT 1
- File Copy test failed HOT 1
- In the pgms/index.base file, what does each column separated by " | " mean?
- SMP -- not detected on Raspberry Pi 4 (and 3)
- Can we initialize the global variables? HOT 2
- Running on intel SPR CPU, unix bench compiled with gcc 10.3 performs worse than with gcc 8.5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from byte-unixbench.