blender/intern/cycles/util
Xavier Hallade 4b14b33ea8 Cycles: use packed float3 back for oneAPI
This fixes a 15% performance regression silently introduced by
79ab76e156 that aligned the compact
float3 on 16 bytes for oneAPI.
Current change is minimalist, there are further cleanup opportunities
such as removing packed_float3 definition for oneAPI but for some
reason, it cuts the recovered speedup in half, so we're starting with
this small fix for now.

Reviewed by: brecht

Differential Revision: https://developer.blender.org/D16340
2022-10-26 10:53:23 +02:00
..
algorithm.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
aligned_malloc.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
aligned_malloc.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
args.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
array.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
atomic.h Cycles: Add support for rendering on Intel GPUs using oneAPI 2022-06-29 12:58:04 +02:00
avxb.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
avxf.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
avxi.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
boundbox.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
CMakeLists.txt Cycles: add Path Guiding on CPU through Intel OpenPGL 2022-09-27 15:56:32 +02:00
color.h Cycles: unify math functions names 2022-06-23 15:02:53 +02:00
debug.cpp Cleanup: minor changes to DebugFlags 2022-08-11 17:03:10 +02:00
debug.h Cleanup: minor changes to DebugFlags 2022-08-11 17:03:10 +02:00
defines.h Merge branch 'blender-v3.3-release' 2022-08-19 21:02:02 +02:00
deque.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
disjoint_set.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
foreach.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
function.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
guarded_allocator.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
guarded_allocator.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
guiding.h Cycles: add Path Guiding on CPU through Intel OpenPGL 2022-09-27 15:56:32 +02:00
half.h Cycles: Add support for rendering on Intel GPUs using oneAPI 2022-06-29 12:58:04 +02:00
hash.h Cycles: improve Progressive Multi-Jittered sampling 2022-09-01 14:57:39 +02:00
ies.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
ies.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
image.h Cycles: load 8 bit image textures as half float for some color spaces 2022-06-02 18:04:38 +02:00
image_impl.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
list.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
log.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
log.h Cleanup: add verbose logging category names instead of numbers 2022-06-17 14:08:14 +02:00
map.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
math.h Fix T98672: Noise texture shows incorrect behaviour for large scales 2022-10-16 02:34:10 +02:00
math_cdf.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
math_cdf.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
math_fast.h Cleanup: spelling in comments 2022-10-03 11:03:46 +11:00
math_float2.h Cycles: approximate shadow caustics using manifold next event estimation 2022-04-01 17:45:39 +02:00
math_float3.h Fix T98672: Noise texture shows incorrect behaviour for large scales 2022-10-16 02:34:10 +02:00
math_float4.h Cycles: add more math functions for float4 2022-06-30 16:25:21 +02:00
math_float8.h Fix Cycles Metal build errors after recent changes 2022-07-26 00:17:37 +02:00
math_int2.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
math_int3.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
math_int4.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
math_intersect.h Cycles: improve ray tracing precision near triangle edges 2022-08-09 18:42:01 +02:00
math_matrix.h Cleanup: use make_float4(f) zero_float4() to simplify code 2022-03-23 20:06:12 +01:00
md5.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
md5.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
murmurhash.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
murmurhash.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
opengl.h GPU: replace GLEW with libepoxy 2022-08-15 16:10:29 +02:00
openimagedenoise.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
openvdb.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
optimization.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
param.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
path.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
path.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
profiling.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
profiling.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
progress.h Cycles: take into account time limit for progress bar 2022-08-11 19:37:18 +02:00
projection.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
queue.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
rect.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
semaphore.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
set.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
simd.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
simd.h Cleanup: clang-format 2022-04-13 13:45:42 +10:00
sseb.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
ssef.h Cycles: Fix floor intrinsic for ARM Neon 2022-10-17 01:13:43 +02:00
ssei.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
stack_allocator.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
static_assert.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
stats.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
string.cpp Cycles: Apple Silicon optimization to specialize intersection kernels 2022-07-15 13:40:04 +02:00
string.h Cycles: Apple Silicon optimization to specialize intersection kernels 2022-07-15 13:40:04 +02:00
system.cpp Cleanup: simplify CPU instruction checking 2022-08-09 16:59:05 +02:00
system.h Cleanup: simplify CPU instruction checking 2022-08-09 16:59:05 +02:00
task.cpp Cleanup: add verbose logging category names instead of numbers 2022-06-17 14:08:14 +02:00
task.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
tbb.h Fix T97498, T97651: crash in Cycles with TBB 2021 after recent changes 2022-04-28 00:24:13 +02:00
texture.h Cycles: Add half precision float support for volumes with NanoVDB 2022-05-23 19:08:01 +02:00
thread.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
thread.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
time.cpp Cycles: unify math functions names 2022-06-23 15:02:53 +02:00
time.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
transform.cpp Cycles: make transform inverse match Embree exactly 2022-08-09 16:59:05 +02:00
transform.h Cycles: make transform inverse match Embree exactly 2022-08-09 16:59:05 +02:00
transform_avx2.cpp Cycles: make transform inverse match Embree exactly 2022-08-09 16:59:05 +02:00
transform_inverse.h Fix Cycles build error on 32bit x86 2022-10-25 16:56:35 +02:00
transform_sse41.cpp Cycles: make transform inverse match Embree exactly 2022-08-09 16:59:05 +02:00
types.h Cycles: add new Spectrum and PackedSpectrum types 2022-08-09 16:49:34 +02:00
types_float2.h Cleanup: make vector types make/print functions consistent between CPU and GPU 2022-08-09 16:07:23 +02:00
types_float2_impl.h Cleanup: make vector types make/print functions consistent between CPU and GPU 2022-08-09 16:07:23 +02:00
types_float3.h Cycles: use packed float3 back for oneAPI 2022-10-26 10:53:23 +02:00
types_float3_impl.h Cleanup: make vector types make/print functions consistent between CPU and GPU 2022-08-09 16:07:23 +02:00
types_float4.h Cleanup: make vector types make/print functions consistent between CPU and GPU 2022-08-09 16:07:23 +02:00
types_float4_impl.h Cleanup: make vector types make/print functions consistent between CPU and GPU 2022-08-09 16:07:23 +02:00
types_float8.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_float8_impl.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_int2.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_int2_impl.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_int3.h Cleanup: make vector types make/print functions consistent between CPU and GPU 2022-08-09 16:07:23 +02:00
types_int3_impl.h Cleanup: make vector types make/print functions consistent between CPU and GPU 2022-08-09 16:07:23 +02:00
types_int4.h Cleanup: make vector types make/print functions consistent between CPU and GPU 2022-08-09 16:07:23 +02:00
types_int4_impl.h Cleanup: make vector types make/print functions consistent between CPU and GPU 2022-08-09 16:07:23 +02:00
types_spectrum.h Cycles: add new Spectrum and PackedSpectrum types 2022-08-09 16:49:34 +02:00
types_uchar2.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uchar2_impl.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uchar3.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uchar3_impl.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uchar4.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uchar4_impl.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uint2.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uint2_impl.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uint3.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uint3_impl.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uint4.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_uint4_impl.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
types_ushort4.h Cleanup: simplifications and consistency for vector types 2022-07-28 21:27:13 +02:00
unique_ptr.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
vector.h Cleanup: simplify CPU instruction checking 2022-08-09 16:59:05 +02:00
version.h Cycles: sync changes from standalone repository 2022-09-18 17:34:23 +02:00
windows.cpp Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
windows.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00
xml.h Cycles: use SPDX license headers 2022-02-11 17:47:34 +01:00