Page MenuHome

Cycles: Fix T70685

Authored by LazyDodo (LazyDodo) on Oct 16 2019, 6:24 PM.


Dalai Felinto (dfelinto)
Group Reviewers

Building with WITH_CYCLES_NATIVE_ONLY on AVX2+MSVC system leads to a bad combination of sse2 kernel+BVH8.

What is happening is:

  1. MSVC does not have an -march=native switch, so kernel.cpp gets build with the default flags and you and up with a run of the mill SSE2 kernel.
  1. DebugFlags().cpu.has_avx2() is true, and it decides BVH8 is a valid option, normally not an issue, since kernel.cpp detects the AVX2 as well and has the right kernel.
  1. But not for msvc which tries to match up and sse2 kernel with BVH8 and thing go boom

Diff Detail

rB Blender
tmp_T70685 (branched from master)
Build Status
Buildable 5392
Build 5392: arc lint + arc unit

Event Timeline

Patch works fine here (MSVC + AVX2).


typo: switch, not swtich


Drop the extra empty spaces.

This revision is now accepted and ready to land.Oct 16 2019, 6:32 PM

(and for the records my computer was the one where this originally happened, without this patch almost all cycles unittest fail with native kernel)

  • fix typos and whitespace
LazyDodo (LazyDodo) marked 2 inline comments as done.Oct 16 2019, 6:34 PM