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
AgeCommit message (Collapse)Author
2021-11-23Merge branch 'blender-v3.0-release'Brecht Van Lommel
2021-11-23Fix T93109: Cycles HIP missing check for correct driver versionSayak Biswas
21.Q4 is required, older version should not show devices in the preferences. This adds a check for the file version of amdhip64.dll file during hipew initialization. Differential Revision: https://developer.blender.org/D13324
2021-11-23Merge branch 'blender-v3.0-release'Brecht Van Lommel
2021-11-23Fix T93244: Cycles HIP not working with multi GPU renderingSayak Biswas
Use the correct device function (hipDeviceGet) for multi GPU setups, instead of hipGetDevice which just returns the default device. Differential Revision: https://developer.blender.org/D13323
2021-11-22Merge branch 'blender-v3.0-release'Sergey Sharybin
2021-11-22Fix T90308: Cycles crash copying memory from device to hostSergey Sharybin
Happens when device runs out of memory and Cycles is moving some textures to the host memory. The delayed memory free for OptiX BVH was moving data from one device_memory to another, leaving the original device memory in an invalid state. This was ruining the allocation map in the CUDA device which is using pointer to the device_memory. This change makes it so the memory pointer is stolen from BVH into the delayed memory free list. Additionally, forbid copying and moving instances of device_memory and added sanity checks in the device implementation. Differential Revision: https://developer.blender.org/D13316
2021-11-22Cleanup: Clang-format of the HIP device implementationSergey Sharybin
2021-11-20Merge branch 'blender-v3.0-release'Brecht Van Lommel
2021-11-20Fix T92984: Cycles HIP crash with smoke volumesSayak Biswas
This fixes the the app crash happening when trying to render smoke as a dense 3D texture. The changes are related to matching up hipew with the actual HIP headers. Differential Revision: https://developer.blender.org/D13296
2021-11-17Cleanup: Remove unused show_samples() device code in Cycles.Thomas Dinges
2021-11-13Cleanup: spelling in comments, comment block formattingCampbell Barton
2021-11-13Cleanup: clang-formatCampbell Barton
2021-11-11Cleanup CUDA / HIP commentsThomas Dinges
Remove outdated CUDA comments for bindless textures and cleanup some HIP comments that still mentioned CUDA. Differential Revision: https://developer.blender.org/D13189
2021-11-11Merge branch 'blender-v3.0-release'Thomas Dinges
2021-11-11Fix wrong device check in HIP kernel compile.Thomas Dinges
Also cleanup some related code, that was falsely copied from CUDA. Differential Revision: https://developer.blender.org/D13180
2021-11-10Merge branch 'blender-v3.0-release'Brecht Van Lommel
2021-11-10Cycles: disable graphics interop for HIP devicesThomas Dinges
This is due to a driver bug, so disable it for now until it gets resolved in a future driver release. Ref T92972 Differential Revision: https://developer.blender.org/D13167
2021-11-09Merge branch 'blender-v3.0-release'Aaron Carlisle
2021-11-09Cycles: mark both RDNA and RDNA2 as support for HIPBrecht Van Lommel
2021-11-04Merge branch 'blender-v3.0-release'Germano Cavalcante
2021-11-04Cleanup: fix typoBrecht Van Lommel
2021-11-04Cycles: add code to check for supported HIP device architecturesBrecht Van Lommel
RDNA2 only for now to be conservative, but testing more hardware is underway. Ref T92393 Differential Revision: https://developer.blender.org/D12958
2021-11-04Fix Cycles HIP Kernels loading on Arch names with extra optionsBrian Savery
The kernel file names are search for based on the arch name, for example gfx1010. However HIP's gcnArchName can contain options such as xnack- in the name. For example gfx1010:sramecc-:xnack-. This revision tokenizes the info from gcnArchName and just uses the first token for choosing the Kernel file to use. Kernels are portable across those features in the arch name. Also remove the bit for recompiling ptx as clearly that is not relevant. Differential Revision: https://developer.blender.org/D13117
2021-11-01Merge branch 'blender-v3.0-release'Clément Foucault
2021-11-01Cleanup: Remove Cycles device checks for half float.Thomas Dinges
All supported devices support half float now, so we can remove the check. Differential Revision: https://developer.blender.org/D13021
2021-11-01Fix T92671: confusing Cycles debug logs about CPU architectureBrecht Van Lommel
Instead of printing debug flags listing various CPU and GPU settings that may or may not be used, print when we are using them. This include CPU kernel types, OptiX debugging and CUDA and HIP adaptive compilation. BVH type was already printed.
2021-10-26Cycles: remove prefix from source code file namesBrecht Van Lommel
Remove prefix of filenames that is the same as the folder name. This used to help when #includes were using individual files, but now they are always relative to the cycles root directory and so the prefixes are redundant. For patches and branches, git merge and rebase should be able to detect the renames and move over code to the right file.
2021-10-26Cycles: changes to source code folders structureBrecht Van Lommel
* Split render/ into scene/ and session/. The scene/ folder now contains the scene and its nodes. The session/ folder contains the render session and associated data structures like drivers and render buffers. * Move top level kernel headers into new folders kernel/camera/, kernel/film/, kernel/light/, kernel/sample/, kernel/util/ * Move integrator related kernel headers into kernel/integrator/ * Move OSL shaders from kernel/shaders/ to kernel/osl/shaders/ For patches and branches, git merge and rebase should be able to detect the renames and move over code to the right file.
2021-10-22Cycles: various fixes for HIP and compilation of HIP binariesSayak Biswas
* Additional structs added to the hipew loader for device props * Adds hipRTC functions to the loader for future usage * Enables CPU+GPU usage for HIP * Cleanup to the adaptive kernel compilation process * Fix for kernel compilation failures with HIP with latest master Ref T92393, D12958
2021-10-21Cycles: add shadow path compaction for GPU renderingBrecht Van Lommel
Similar to main path compaction that happens before adding work tiles, this compacts shadow paths before launching kernels that may add shadow paths. Only do it when more than 50% of space is wasted. It's not a clear win in all scenes, some are up to 1.5% slower. Likely caused by different order of scheduling kernels having an unpredictable performance impact. Still feels like compaction is just the right thing to avoid cases where a few shadow paths can hold up a lot of main paths. Differential Revision: https://developer.blender.org/D12944
2021-10-21Cleanup: make HIP and CUDA code more consistentBrecht Van Lommel
Ref D12834
2021-10-20Fix: Add cast to atof for CYCLES_CONCURRENT_STATES_FACTOR env variable parsing.William Leeson
The conversion from double to float was causing a build failure. Differential Revision: https://developer.blender.org/D12946
2021-10-20Cycles: reduce kernel reserved local memory when not using shader raytracingBrecht Van Lommel
Ref T87836
2021-10-20HIP device code cleanup and fix for high VRAM usageSayak Biswas
This patch cleans up code for HIP device and makes it more consistent with the CUDA code. It also fixes the issue with high VRAM usage on AMD cards using HIP allowing better performance and usage on cards like 6600XT. Added a check in intern/cycles/kernel/bvh/bvh_util.h to prevent compiler error with hipcc Reviewed By: brecht, leesonw Maniphest Tasks: T92124 Differential Revision: https://developer.blender.org/D12834
2021-10-03Cleanup: spelling in commentsCampbell Barton
2021-09-30Cycles: refactor API for GPU displayBrecht Van Lommel
* Split GPUDisplay into two classes. PathTraceDisplay to implement the Cycles side, and DisplayDriver to implement the host application side. The DisplayDriver is now a fully abstract base class, embedded in the PathTraceDisplay. * Move copy_pixels_to_texture implementation out of the host side into the Cycles side, since it can be implemented in terms of the texture buffer mapping. * Move definition of DeviceGraphicsInteropDestination into display driver header, so that we do not need to expose private device headers in the public API. * Add more detailed comments about how the DisplayDriver should be implemented. The "driver" terminology might not be obvious, but is also used in other renderers. Differential Revision: https://developer.blender.org/D12626
2021-09-29Cleanup: trailing space, newlines at EOFCampbell Barton
2021-09-28Cycles: add HIP device support for AMD GPUsBrian Savery
NOTE: this feature is not ready for user testing, and not yet enabled in daily builds. It is being merged now for easier collaboration on development. HIP is a heterogenous compute interface allowing C++ code to be executed on GPUs similar to CUDA. It is intended to bring back AMD GPU rendering support on Windows and Linux. https://github.com/ROCm-Developer-Tools/HIP. As of the time of writing, it should compile and run on Linux with existing HIP compilers and driver runtimes. Publicly available compilers and drivers for Windows will come later. See task T91571 for more details on the current status and work remaining to be done. Credits: Sayak Biswas (AMD) Arya Rafii (AMD) Brian Savery (AMD) Differential Revision: https://developer.blender.org/D12578