RenderKit / ospray

An Open, Scalable, Portable, Ray Tracing Based Rendering Engine for High-Fidelity Visualization
http://ospray.org
Apache License 2.0
997 stars 182 forks source link

OSPbenchmark: #osp:api: could not find module initializer ospray_module_init_ispc #401

Closed 111alan closed 3 years ago

111alan commented 4 years ago

Just tried to run ospbenchmark 2.0.0, got the following message. I've tried to remove the old ispc from path environmental variable but the problem persists. The tests completes successfully though.

Are there any pre-requisits that aren't met? or what else went wrong? Also, vtune shows that ospray-2.0.0 doesn't use any 512bit instruntions?

By the way, a little suggestion, it would be better if you give this benchmark a better GUI like Cinebench, so it could replace Cinebench as a more up-to-date benchmarking tool.

Thx. error fp

jeffamstutz commented 4 years ago

This was fixed in 27184234, which is on release-2.0.x. It will be a part of the soon v2.0.1 release. Thanks!

jeffamstutz commented 4 years ago

Are there any pre-requisits that aren't met?

No, this was a bug on our part.

Also, vtune shows that ospray-2.0.0 doesn't use any 512bit instruntions?

AVX2 is our fastest code path on most recent CPUs, which is well known. You can still enable AVX512 specific code paths if you build OSPRay from scratch, but this is unlikely to provide benefit to OSPRay.

By the way, a little suggestion, it would be better if you give this benchmark a better GUI like Cinebench, so it could replace Cinebench as a more up-to-date benchmarking tool.

Thanks for the suggestion. We will keep these as windowless/offline benchmarks for the foreseeable future as these will primarily be for OSPRay performance regression testing for development purposes. Using them beyond that is out of scope for us for now. OSPRay's primary purpose is to provide production-level rendering as a C/C++ library, and benchmarking is a happy secondary use one might use it for.

However, nobody will be stopped for writing an interactive benchmarking app that uses OSPRay and reports whatever metrics desired! ;)

111alan commented 4 years ago

Thanks, waiting for 2.0.1.

I thought 512bit simd doubles the throughput of AVX2 each instruction, thus being the most powerful instructions despite its about 1/4 frequency penalty. What's the hinderance here?

A little suggestion, it's better for the benchmark to pause instead of automatically exit when the test ends, so users can capture a screenshot of the whole test easily without writing a batch file or excute it in CMD.

Thank you for the reply.

johguenther commented 3 years ago

Some updates: