c984d73a7f
Fixes for API changes done in Blender 2.80
...
Seems to work with both Blender 2.79 and 2,80.
2019-06-03 09:51:07 +02:00
a04a10068a
Prevent crash when generating JSONString
...
The issue is discussed in rBBB4726ee0c9c05
2018-09-06 15:51:36 +02:00
f254f806ce
Update README.md
...
Add note about downloading Blender scenes from SVN.
2018-09-04 23:50:06 +02:00
12573e7158
Update README.md
...
Add info about CLI usage.
2018-09-03 16:55:52 +02:00
4726ee0c9c
Produce benchmark JSON schema v2
...
- No more '(Display)' strings in the GPU names, but store devices as
`{'name': name, 'type': 'CPU/CUDA/OPENCL', 'is_display': bool}`
- Introduces testing with py.test & pipenv. The test suite is far from
complete, though.
2018-08-28 12:11:01 +02:00
34dd5eec25
Git: fetch before checkout'ing a branch
2018-08-17 12:55:37 +02:00
afdb0e977e
Actually call bundle.sh from bundle.bat
...
…instead of bundle-linux.sh that no longer exists
2018-08-17 12:52:43 +02:00
1f70a6f266
Add README.md
2018-08-17 12:42:17 +02:00
e6d300a219
Benchmark submodule checkout after libs update
...
Otherwise on Darwin make update will switch it
back to master.
2018-08-17 12:16:59 +02:00
36be4df607
Rename bundle-linux.sh and bundle-windows.bat → bundle.{sh,bat}
...
The shell script is also used by macOS and Windows builds, so calling it
'linux' is a bit silly.
2018-08-17 11:52:10 +02:00
8f0848dc35
Blender's benchmark submodule should be on the correct branch
...
This forces the release/scripts/benchmark submodule to be on the same
branch as the working directory of the bundle script (usually release-xxx).
2018-08-17 11:50:40 +02:00
363a7621ab
Bumped version to 1.0b3.dev0
2018-08-17 11:13:40 +02:00
9e9d1b7c13
Updated setup.cfg
...
The `pep8` command was complaining that `pycodestyle` is the new `pep8`
when it comes to config section names.
2018-08-16 17:24:13 +02:00
99fdb422ef
Fixed bug in peak memory stats + added unit test
2018-08-16 17:23:47 +02:00
0bfdfb87bc
Cleanup of stats regexps
2018-08-16 17:23:25 +02:00
84faded0cc
Fix T56314: wrong operating system records for Ubuntu
...
We now bundle `distro` to find Linux distribution info. Its source is
https://github.com/nir0s/distro
2018-08-16 15:56:08 +02:00
1d1aa3dab9
Ignore bundled files
2018-08-16 15:38:46 +02:00
63950598c6
Bundle script: stop when there is an error
2018-08-16 15:38:00 +02:00
0e2dc29c26
Blender branch changed temp-benchmark → benchmark
2018-08-16 15:37:51 +02:00
03ad327ca2
Include Benchmark Client version information in the result JSON
...
This part of the JSON schema isn't required yet. When missing, the version
is assumed to be -∞
2018-08-16 14:43:29 +02:00
c4139613f8
Accidentally bumped the version nr, back to 1.0b2.dev0
2018-08-16 10:40:42 +02:00
6f180cc6c4
Scripted version bump + release branch creation
2018-08-15 18:37:29 +02:00
fbcc6dc511
Pass hostname to auth token request
...
Related to T56381
2018-08-15 13:06:45 +02:00
18a99a437a
Include current time in error report
2018-08-14 17:27:53 +02:00
0eea078802
Include version in HTTP User-Agent header
...
This allows us to check on the server side whether the user is still using
an up-to-date benchmark client or not.
2018-08-14 17:20:13 +02:00
4fea9526b9
Allow users to save an error report
2018-08-14 17:19:37 +02:00
1a63105d5b
Logging fixes
2018-08-14 17:15:41 +02:00
e5bf3b1947
Store version number of the benchmark client in a separate python file
2018-08-14 17:15:36 +02:00
13b766de4a
Moved setup.cfg to the correct place
2018-08-14 16:47:00 +02:00
b64577df2e
Run submission in a separate thread, and more explicit state
...
Also more explicit timeouts and an overall better handling of errors.
2018-08-14 16:36:43 +02:00
5d86b87f40
Better handling of HTTP connection errors during submission
2018-08-14 15:38:46 +02:00
bf61aafdac
Remove unused variable
2018-08-14 15:38:25 +02:00
2da2105763
Wordwrap: prevent infinite loop + cache result
...
Previously a line that was too long but didn't contain spaces would cause
an infinite loop and hang Blender. Now we just hard-break each line when
there are no spaces to be found.
The result of word_wrap() is now also cached, so that redraws are more
efficient.
2018-08-14 15:38:05 +02:00
7b88d7704c
Fix T56372: Properly show error messages when submission fails
...
This also introduces a word-wrapping function that takes variable character
widths into account.
2018-08-14 15:08:58 +02:00
9ed933760c
Moved some drawing code into separate functions
2018-08-14 13:55:01 +02:00
2999d063db
Default global state variables to the correct type
...
Code gets easier to understand if variables don't change their type.
2018-08-14 13:49:47 +02:00
088427a833
More protection with G.progress_lock
2018-08-14 13:48:07 +02:00
7ecc2cd22b
Protect setting G.result_dict
with G.progress_lock
2018-08-14 13:44:07 +02:00
c915a486cb
Use context manager for handling G.progress_lock
...
Manually calling `G.progress_lock.release()` is error-prone as it's not
called when an exception is raised while the lock is acquired.
2018-08-14 13:43:29 +02:00
d252f75acf
Separated space/__init__.py
into a few modules
...
- `draw.py` contains all the drawing code
- `global_state.py` contains the `G` class introduced in the previous commit.
2018-08-14 13:38:05 +02:00
4ae3f418c6
Formatting
2018-08-14 13:34:20 +02:00
9af1ca1c49
Moved global state into a class G
...
This allows other modules to do `from benchmark.space import G` and use
the global state too. This is possible because the name `G` keeps
referencing the same object (a class) even when resetting (contrary to
the old `global_xxx = None`, which assigns a new object reference).
2018-08-14 13:33:56 +02:00
cfbbc912e7
Removed unused imports
2018-08-14 12:17:39 +02:00
58644b911f
Formatting according to PEP-8 using autopep8
...
I've added a `setup.cfg` file with `[pep8]` section to make it use the
120-char line length limit we have for all Blender/Python scripts.
2018-08-14 12:14:54 +02:00
05c01f2b21
PEP8: import of built-in modules at the top of the file
...
This also prevents double import of `sys` and `os`.
2018-08-14 12:07:26 +02:00
d026cc12f7
Remove debug only code
2018-08-10 20:18:29 +02:00
3271a728a2
Make sure Blender's build date is always in expected format
2018-08-10 20:16:19 +02:00
9ab37dbb45
Ensure CPU topology information is integers on all platforms
...
On Windows it was a string, go figure.
2018-08-10 19:48:18 +02:00
a2cf5eb571
Add device index to OpenCL devices
2018-08-10 14:38:11 +02:00
61e56c2d8e
Allow sharing only once
2018-08-10 14:14:14 +02:00