Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
AgeCommit message (Collapse)Author
2016-10-17Fix T49630: Cycles: Swapped shader and bake kernelsLukas Stockner
The problem here was, as the title says, that the two kernels were swapped. Since shader evaluation is only used for building the samling map when World MIS is enabled, rendering without it would still work fine, although baking also was broken.
2016-10-17Cycles: Improve OpenCL kernel compilation loggingLukas Stockner
The previous refactor changed the code to use a separate logging mechanism to support multithreaded compilation. However, since that's not supported by any frameworks yes, it just resulted in bad logging behaviour. So, this commit changes the logging to go diectly to stdout/stderr once again by default.
2016-10-15Cycles: use near clipping distance in panorama camera.Scott Wu
Reviewed By: sergey, brecht, dfelinto Differential Revision: https://developer.blender.org/D1952
2016-10-14Cycles: Disable optimization of operator / for float3Sergey Sharybin
This was giving some speedup but made intersection tests to fail from watertight point of view. Needs deeper investigation, but need to quickly get it fixed for the studio.
2016-10-12Fix T49640: Cycles constant folding incorrect for texture coordinates.Brecht Van Lommel
2016-10-12Fix build error with WITH_CYCLES_NATIVE_ONLY and recent AVX2 changes.Brecht Van Lommel
2016-10-12Cycles: Use const reference for register variables in non-OpenCL codeSergey Sharybin
This is something tested by @LazyDodo and suggested by Maxym to make MSVC happier.
2016-10-12Cycles: Use more SSE intrinsics for float3 typeSergey Sharybin
This gives about 5% speedup on AVX2 kernels (other kernels still have SSE disabled for math operations) and this solves the slowdown of koro scene mention in the previous commit. The title says it all actually. This commit also contains changes to pass float3 as const reference in affected functions. This should make MSVC happier without breaking OpenCL because it's only done in areas which are ifdef-ed for non-OpenCL. Another patch based on inspiration from Maxym Dmytrychenko, thanks!
2016-10-12Cycles: Implement AVX2 version of triangle_intersectSergey Sharybin
This commit basically vectorizes existing code using AVX2 instructions (without modifying algorithm itself). This gives quite nice speedups: BMW: -8% Classroom: -5% Cat: -5% Koro: +1% Barcelona: -8% That's on Linux machine, reported performance improvement on Windows goes up to 20%. Not currently sure why Koro is somewhat slower because it mainly uses curve intersection tests, could be a time noise? Or osmething with the cache utilization perhaps? In any case speedup in other scenes makes me thinking that current state is acceptable for initial implementation. This is again inspired by Maxym Dmytrychenko.
2016-10-12Cycles: Add new avxf vectorized data typeSergey Sharybin
Based on existing ssef data type and to my knowledge it's also what happens in Embree nowadays. Inspired by Maxym Dmytrychenko and required for the upcoming triangle intersection commit. Hopefully the copyright message is correct.
2016-10-12Cycles: Enable SSE options of math module for AVX2 kernelsSergey Sharybin
Currently this does not give measurable difference, but is required ground work for some upcoming further optimization of AVX2 kernels.
2016-10-12Cycles: Get rid of ifdef-ed noinline policySergey Sharybin
2016-10-12Cycles: Fix use of uninitialized variable in SSSSergey Sharybin
When ray hits curve segment with SSS shader it was possible to have uninitialized hit_P variable used for sampling. Seems that was a reason of our headache of difference between AVX2 and SSE4 render results here, so now we can revert all the nasty ifdef-ed inline policies.
2016-10-12Cycles: Cleanup, styleSergey Sharybin
2016-10-09Cycles: Split device_opencl.cpp into multiple files for easier maintenanceLukas Stockner
There are no user-visible changes, just some internal restructuring. Differential Revision: https://developer.blender.org/D2231
2016-10-08Fix a few compile errors with C++11 on macOS.Brecht Van Lommel
2016-10-07Cycles: Fix OpenCL split kernel compilation after recent CUDA 8 performance fixLukas Stockner
2016-10-06Fix T49523: very slow normal map tangent computation for rendering in 2.78.Brecht Van Lommel
2016-10-03Cycles CUDA: make CUDA 8.0 the officially supported version for all platforms.Brecht Van Lommel
2016-10-03Fix Cycles CUDA performance on CUDA 8.0.Brecht Van Lommel
Mostly this is making inlining match CUDA 7.5 in a few performance critical places. The end result is that performance is now better than before, possibly due to less register spilling or other CUDA 8.0 compiler improvements. On benchmarks scenes, there are 3% to 35% render time reductions. Stack memory usage is reduced a little too. Reviewed By: sergey Differential Revision: https://developer.blender.org/D2269
2016-10-03Fix fluid sim build error with MSVC.Brecht Van Lommel
2016-10-02[Windows/Cycles/Clang] Fix compilation error with clang-cl on windowslazydodo
2016-10-02Fluids: improve multithreaded CPU usage.Brecht Van Lommel
Fixes for clamp-omp, fewer shared variables, fix some cases of threads writing to the same memory location. Issue found by Jens Verwiebe, who reports 30% speedup with 16 core CPU, when using this with a recent clang-omp version.
2016-10-01Cycles: implement partial constant folding for exponentiation.Alexander Gavrilov
This is also an important mathematical operation that can be folded if it is known that one argument is a certain constant. For colors the operation is provided as a Gamma node. The SVM Gamma node needs a small fix to make it follow the 0 ^ 0 == 1 rule, same as the Power node, or the Gamma node itself in OSL mode. Reviewers: #cycles Differential Revision: https://developer.blender.org/D2263
2016-10-01Fix MSVC compiler warning due to using */* to start comment.Brecht Van Lommel
2016-09-29Cycles: Support earlier tile rendering termination on cancelSergey Sharybin
It will discard the whole tile, but it's still kind of more friendly than fully locked interface (sort of) for until tile is fully sampled. Sorry if it causes PITA to merge for the opencl split work, but this issue bothering a lot when collecting benchmarks.
2016-09-29Cycles: Fix typo in shader cancel routinesSergey Sharybin
2016-09-29Cycles: Improve OpenCL line information handlingSergey Sharybin
Previously it was falling back to just a path after #include statement was finished. Now we fall back to a proper current file name after dealing with the preprocessor statement.
2016-09-29Cycles: Cleanup file headersSergey Sharybin
Some of the files were wrongly attributing code to some other organizations and in few places proper attribution was missing. This is mainly either a copy-paste error (when new file was created from an existing one and header wasn't updated) or due to some refactor which split non-original-BF code with purely BF code. Should solve some confusion around.
2016-09-29Fix Windows mouse wheel scroll speedlazydodo
In Windows, event dispatching code is throwing out the wheel scroll count value. Despite of how many fast you move the wheel, it only make one-notch scroll event. This patch convert wheel event to multiple 1-notch wheel events. This also correct the handling of smooth scroll mouse wheel (which can report smaller than 1-notch wheel movement) by accumulating the small wheel delta values. Reviewers: djnz, shadowrom, elubie, #platform:_windows, sergey, juicyfruit, brecht Reviewed By: shadowrom, elubie, #platform:_windows, brecht Subscribers: dingto, elubie, brachi, brecht Differential Revision: https://developer.blender.org/D143
2016-09-28Cycles: Cleanup, indentationSergey Sharybin
2016-09-28Cycles: Fix compilation error with minimal feature setSergey Sharybin
2016-09-27fix Mac build for Xcode < 8Mike Erwin
We need a long-term fix, but this will get 2.78 out the door.
2016-09-27cleanup: spacing & alignmentMike Erwin
2016-09-26Cycles: Use correct light sampling PDF for MIS calculation with Branched ↵Lukas Stockner
Path Tracing The light sampling functions calculate light sampling PDF for the case that the light has been randomly selected out of all lights. However, since BPT handles lamps and meshlights separately, this isn't the case. So, to avoid a wrong result, the code just included the 0.5 factor in the throughput. In theory, however, the correction should be made to the sampling probability, which needs to be doubled. Now, for the regular calculation, that's no real difference since the throughput is divided by the pdf. However, it does matter for the MIS calculation - it's unbiased both ways, but including the factor in the PDF instead of the throughput should give slightly better results. Reviewers: sergey, brecht, dingto, juicyfruit Differential Revision: https://developer.blender.org/D2258
2016-09-25Cycles: Fix T49411: Multiscatter GGX with zero roughness when Filter Glossy ↵Lukas Stockner
is enabled
2016-09-25Fix T49310: incorrect Cycles standalone normals with negative scale.Brecht Van Lommel
2016-09-23Cycles: Don't sum up memory usage of all devices together for the statsSergey Sharybin
2016-09-23Cycles: Fix overflow caused by wrong size calculation in Mesh::add_undisplacedMai Lavelle
2016-09-22Fix T49417: Cycles crash - can't use 5 Gigabyte Tile EXR texture fileSergey Sharybin
Was an integer overflow issue when calculating offsets.
2016-09-21Cycles: Cleanup, whitespaceSergey Sharybin
2016-09-21Cycles: Make code more uniform across two versions of shadow_blocked()Sergey Sharybin
Just to make it easier to research ways of possible code de-duplication.
2016-09-21Cycles: Remove out of date commentSergey Sharybin
2016-09-20Cycles: Make regular bvh traversal functions close to each otherSergey Sharybin
2016-09-20Cycles: Re-group ifdef so we check for particular feature only onceSergey Sharybin
2016-09-20Cycles: Avoid conversion from bool to uintSergey Sharybin
2016-09-19OpenGL: software renderer for old Mac GPUsMike Erwin
We raised the minimum to GL 2.1 in Blender 2.77, and dropped support for older GPUs (pre-2012 Intel mostly). On Windows you get a popup message, but on Mac we simply crashed. Every Mac has a builtin software renderer for GL 2.1 so let's use that when the GPU is not capable! Run blender --debug-gpu to see version detection & software fallback.
2016-09-19Cycles: Cleanup code style in split kernelSergey Sharybin
2016-09-19Cycles: More tweaks to make specialized BVH traversal matchingSergey Sharybin
2016-09-19Cycles: Avoid redundant intersection pre-calculationSergey Sharybin