blender/intern/cycles
Sergey Sharybin 0d01cf4488 Cycles: Extra tweaks to performance of header expansion
Two main things here:

1. Replace all unsafe for #line directive characters into a single loop,
   avoiding multiple iterations and multiple temporary strings created.

2. Don't merge token char by char but calculate start and end point and
   then copy all substring at once.

This gives about 15% speedup of source processing time. At this point
(with all previous commits from today) we've shrinked down compiled
sources size from 108 MB down to ~5.5 MB and lowered processing time
from 4.5 sec down to 0.047 sec on my laptop running Linux (this was a
constant time which Blender will always spent first time loading kernel,
even if we've got compiled clbin).
2017-08-03 08:07:06 +02:00
..
app CMake: Add option to build against system-wide Glog 2017-04-21 14:36:34 +02:00
blender Fix a few harmless maybe uninitialized warnings with GCC 5.4. 2017-07-21 00:54:58 +02:00
bvh Cycles: Header cleanup in BVH: move self header to be the first one 2017-04-13 11:28:02 +02:00
cmake CMake: Add option to build against system-wide Glog 2017-04-21 14:36:34 +02:00
device Cycles: Disable OpenCL clFlush workarounds 2017-07-11 12:16:58 +02:00
doc
graph Cycles: Make all #include statements relative to cycles source directory 2017-03-29 13:41:11 +02:00
kernel Cycles: Support "precompiled" headers in include expansion algorithm 2017-08-02 20:59:19 +02:00
render Fix T51450: viewport render time keeps increasing after render is done. 2017-07-25 01:47:04 +02:00
subd Cycles: Make all #include statements relative to cycles source directory 2017-03-29 13:41:11 +02:00
test Cycles: Don't leave multiple spaces in the device name 2017-06-08 12:15:24 +02:00
util Cycles: Extra tweaks to performance of header expansion 2017-08-03 08:07:06 +02:00
CMakeLists.txt CMake: Add option to build against system-wide Glog 2017-04-21 14:36:34 +02:00