June 11, 2014, 22:20 (GMT) |
Cycles: Add support for uchar4 attributes. * This commit adds generic support for uchar4 attributes. * Vertex Colors use this now, which reduces memory usage at the cost of a bit performance. Differential Revision: https://developer.blender.org/D580 |
June 6, 2014, 19:42 (GMT) |
Cycles: Use FMA in one more place, for Image Textures. |
June 6, 2014, 17:51 (GMT) |
Cycles: Commiting some WIP code for a Quad BVH (CPU only) * This is highly experimental, but commiting it makes is a bit easier to work on. * Traversal code in geom_qbvh_traversal.h and geom_triangle.h based on code by Brecht, from the early Cycles days. I updated it, added some AVX2 code and integrated it into the current code base. * Simple scenes such as cornell box etc. from our test files render ~7% faster, but bigger scenes are quite slower. * The idea is to use traversal and improved builder code from Embree later. Differential Revision: https://developer.blender.org/D579 |
June 6, 2014, 17:21 (GMT) |
Cycles: Updates for AVX2 kernel after merge with master. |
June 6, 2014, 17:07 (GMT) |
Merge remote-tracking branch 'origin/master' into soc-2014-cycles |
June 2, 2014, 08:17 (GMT) |
Cycles: Add 2 nodes to combine and split vectors. This was possible via RGB already, but seems a bit weird that way. |
June 2, 2014, 06:46 (GMT) |
Merge remote-tracking branch 'origin/master' into soc-2014-cycles |
May 29, 2014, 23:29 (GMT) |
Cycles: Update AVX2 kernel for recent changes. |
May 29, 2014, 23:18 (GMT) |
Merge remote-tracking branch 'origin/master' into soc-2014-cycles |
May 24, 2014, 13:29 (GMT) |
Fix cmake error. |
May 24, 2014, 12:24 (GMT) |
Cycles: Use a function to calculate sin and cos at the same time. Only enabled for gcc atm, tested on an Ivy Bridge CPU with gcc 4.8. This gives me about 4% speedup in simple scenes like the cornell_box.blend and color_ramp.blend. Can probably also be enabled for clang and msvc later, they have a sincos() function as well. THis commit also contains small cleanup and a compile fix for the AVX2 kernel after merge. |
May 24, 2014, 11:59 (GMT) |
Merge remote-tracking branch 'origin/master' into soc-2014-cycles |
May 19, 2014, 08:00 (GMT) |
Merge remote-tracking branch 'origin/master' into soc-2014-cycles |
May 16, 2014, 14:45 (GMT) |
Cycles: Use Bit Manipulation Instruction Sets in the AVX2 kernel, helps a bit as well. |
May 14, 2014, 19:09 (GMT) |
Merge remote-tracking branch 'origin/master' into soc-2014-cycles |
May 14, 2014, 19:03 (GMT) |
Cycles: Use some dedicated FMA intrinsics in the AVX2 kernel. This gives me a small speedup of 2% in bmw.blend, and 3% in hair.blend. Could only test on my Macbook with clang though, no idea how gcc or msvc performs here. Thanks to Lockal for some input on this! :) |
May 13, 2014, 08:37 (GMT) |
Cycles: Add an AVX2 CPU kernel. New optimized kernel, which requires AVX2 and FMA3 instruction sets. At the moment the speedup is small (~2%) as we only use gcc and clang auto optimization, but we can use dedicated intrinsics for that later. D482 would be a good basis for further improvements. |
May 12, 2014, 10:29 (GMT) |
Cycles: Calculate face normal on the fly. Instead of precalculation and storage, we now calculate the face normal during render. This gives a small slowdown (~1%) but decreases memory usage, which is especially important for GPUs, where you have limited VRAM. Maybe this can be made a bit faster still, I am investigating this. |
|