Comments (4)
benchpress/src/core/Run_proc.ml
Lines 9 to 41 in 2d84e9d
Does Ptime_clock.now ()
return the elapsed time? As an experimentation, I will replace Ptime_clock.now ()
by Sys.time
which returns the cpu time. It should fix my issue. If it do so, I will add an extra field in the DB to keep the total cpu time also.
from benchpress.
Sys.time
will return the CPU time for the current process (i.e benchpress), not for the solver. Ptime_clock.now
returns the posix wallclock, which indeed might vary if the server is overloaded.
I'm not sure what the clean solution is. Maybe @Gbury can chime in about using cgroups to ensure that subprocesses get dedicated CPU resources? I think François Bobot does this in his benchmark tool.
from benchpress.
This is all a bit complicated, but I'd say:
- to ensure a set amount of cpu ressources, the best best would probably be to set the cpu affinity (see, e.g. https://unix.stackexchange.com/questions/73/how-can-i-set-the-processor-affinity-of-a-process-on-linux ), but that would also require to set affinity for all the other processes running on the machine if one wants to ensure that the prover processes are alone on each core (or find another solution ?)
- One of the motivation for using something else that wall clock time to measure regression is that some colleagues told us that the OS might decide to batch IOs, which could result in arbitrary delays for some instances of provers on systems that are under load (or that do a lot of IO, e.g. when starting more than a dozen provers at the same time). One idea was to use cpu time to identity regressions, but maybe there would be other solutions (stagger the starting times of processes, preload/put in the cache the input problem files, etc...)
from benchpress.
I am trying another solution given by a colleague ;)
from benchpress.
Related Issues (20)
- server: `prover` link should read from the DB
- ui: have breadcrumbs for navigation
- Name dirs in config file HOT 1
- Plots fails when using custom tags
- richer way to scan prover output
- [UI] Filter results by tag HOT 1
- display cached summary directly on main page
- [UI] Add link to filtered list of results in summary
- ui: auto completion in filtering of individual results
- Double ulimit wrapper HOT 2
- Feature wish for ulimit wrappers HOT 1
- Feature wish: show number of entries in detailed view
- Filter full results to only keep differing results HOT 4
- Use GNU time to record maximum resident set size in addition to elapsed time
- Unix.Unix_error(Unix.ECONNREFUSED, "connect", "") fails silently HOT 3
- form to do arbitrary sql query in web UI
- handle proof checking HOT 1
- use vega or vega-lite for graphs
- Mutex.lock: Resource deadlock avoided HOT 1
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 benchpress.