Package Details: blender-develop-git 4.2.r135343.gfc08f7491e7-1

Git Clone URL: https://aur.archlinux.org/blender-develop-git.git (read-only, click to copy)
Package Base: blender-develop-git
Description: Development version of Blender (non-conflicting version)
Upstream URL: https://blender.org/
Licenses: GPL
Conflicts: blender
Provides: blender
Submitter: bartus
Maintainer: bartus
Last Packager: bartus
Votes: 12
Popularity: 0.000000
First Submitted: 2020-05-04 01:47 (UTC)
Last Updated: 2024-04-22 16:59 (UTC)

Required by (61)

Sources (9)

Pinned Comments

bartus commented on 2020-01-16 16:01 (UTC) (edited on 2021-11-01 14:05 (UTC) by bartus)

Current packages state (non-conflicting ones):

bartus commented on 2019-04-10 11:40 (UTC) (edited on 2024-03-01 09:41 (UTC) by bartus)

Note: This is a non-conflicting version of blender-git package with GPU architecture detected at build time.
This package is also hosted on GitHub.
Use env vars to control the build process:
  • DISABLE_CUDA=1 to skip cuda kernel build (cycles+compositor+optix,requires:cuda)
  • DISABLE_HIP=1 to skip amdgpu kernel build (requires:hip-runtime-amd)
  • ENABLE_PYTHON_INSTALL include bundled python (default:off)
  • DISABLE_NINJA=1 to switch the build system to make (default:ninja)
  • DISABLE_OPTIX=1 to skip Optix device build.
  • DISABLE_DRACO=1 to skip gltf exporter draco mesh compression extension.
  • FRAGMENT="#{commit,tag,branch}=..." for making bisect build.
  • CUDA_ARCH="sm_xx sm_yy" to build for a specific Cuda arch, supports multiple values.
  • HIP_ARCH="gfx900 gfx1103" to build for a specific amdgpu arch, supports multiple values.
  • MAKEFLAGS="xxx" to override default make flags (check oom-killer disclaimer below)
  • MAKEFLAGS="xxx:yyy" to override default make flags (colon-separated list)
Usage cases:
  • export DISABLE_CUDA=1 before build
  • DISABLE_CUDA=1 ~your-aur-helper~
  • makepkg DISABLE_CUDA=1
  • yay -S blender-develop-git --mflags "DISABLE_CUDA=1 DISABLE_HIP=1"
Yay users warning:

Since yay relies solely on aur-rpc to solve dependencies instead of calling makepkg --sync it can't follow dependencies logic defined in PKGBUILD. That's why it's up to the user to provide dependencies to enable desired features. Optional features includes cuda/optix/usd.

tl;dr; If you want to prebuild cycles kernels, you have to install CUDA beforehand. If you don't have CUDA installed, PKGBUILD will fail unless you disable cuda with DISABLE_CUDA=1, same for optix and usd.

Out of memory killer.

You may use ninja-mem to prevent oom-killer when building on system with low memory to core ratio.

To activate use MAKEFLAGS+=" -m75" where 75 is the percentage upper threshold of memory usage when new build jobs is postponed.

Or simply lower the make jobs count in "MAKEFLAGS" variable, but this will prolong your build process.

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 .. 9 Next › Last »

bartus commented on 2020-04-16 07:51 (UTC)

@hugegameartgd: sorry for the confusion, I've accidentally committed this in last refactor 9fae1450dbba

Now DISABLE_CUDA should work as expected when building on system with cuda installed.

LinuxUserGD commented on 2020-04-12 18:37 (UTC)

@bartus Thanks, it finally worked with yay -S blender-2.8-git --mflags "MAKEFLAGS=-j3" after installing ninja-mem and removing blender dependencies at /opt/lib (generated when running the blender dependencies script install_deps.sh, fixed "undefined reference" issues at linking).

DISABLE_CUDA=1 only works if cuda is not installed, maybe a similar cmake flag like -DWITH_CYCLES=OFF or running debug instead of release could help otherwise.

bartus commented on 2020-04-10 06:09 (UTC) (edited on 2020-04-10 06:12 (UTC) by bartus)

@hugegameartgd: By default this PKGBUILD try to build all cuda cores, and your system has insufficient memory per core to build all cuda arch in parallel, which triggers out of memory killer (look for Out of memory in journalctl)

nvcc error   : 'ptxas' died due to signal 9 (Kill signal)
  • You can skip cuda kernel build completely with DISABLE_CUDA=1 as described above
  • You specify which cuda architecture to build with env var cuda_capability=sm_52 if it can't be detected automatically with SelectCudaComputeArch.patch.
  • You can limit number of paralel jobs by passing MAKEFLAGS=-jxx to makepkg as described above
  • You can use ninja-mem from AUR which has oom-killer protection switch: add MAKEFLAGS+=" -m75" to makepkg.conf or pass it to makepkg or your aur_helper as described above

LinuxUserGD commented on 2020-04-09 17:08 (UTC)

Fails to compile with cuda:

ninja: Entering directory `/run/media/user/compile/yay/blender-2.8-git/src/build'
[  7% | 1<8<6 | 0.0bps ] Generating kernel_sm_61.cubin
FAILED: intern/cycles/kernel/kernel_sm_61.cubin 
cd /run/media/user/compile/yay/blender-2.8-git/src/build/intern/cycles/kernel && /opt/cuda/bin/nvcc -arch=sm_61 --cubin /run/media/user/compile/yay/blender-2.8-git/src/blender/intern/cycles/kernel/kernels/cuda/kernel.cu --ptxas-options="-v" -D CCL_NAMESPACE_BEGIN= -D CCL_NAMESPACE_END= -D NVCC -m 64 -I /run/media/user/compile/yay/blender-2.8-git/src/blender/intern/cycles/kernel/.. -I /run/media/user/compile/yay/blender-2.8-git/src/blender/intern/cycles/kernel/kernels/cuda --use_fast_math -o /run/media/user/compile/yay/blender-2.8-git/src/build/intern/cycles/kernel/kernel_sm_61.cubin
nvcc error   : 'ptxas' died due to signal 9 (Kill signal)
[ 14% | 2<7<6 | 0.0bps ] Generating kernel_sm_35.cubin
FAILED: intern/cycles/kernel/kernel_sm_35.cubin 
cd /run/media/user/compile/yay/blender-2.8-git/src/build/intern/cycles/kernel && /opt/cuda/bin/nvcc -arch=sm_35 --cubin /run/media/user/compile/yay/blender-2.8-git/src/blender/intern/cycles/kernel/kernels/cuda/kernel.cu --ptxas-options="-v" -D CCL_NAMESPACE_BEGIN= -D CCL_NAMESPACE_END= -D NVCC -m 64 -I /run/media/user/compile/yay/blender-2.8-git/src/blender/intern/cycles/kernel/.. -I /run/media/user/compile/yay/blender-2.8-git/src/blender/intern/cycles/kernel/kernels/cuda --use_fast_math -o /run/media/user/compile/yay/blender-2.8-git/src/build/intern/cycles/kernel/kernel_sm_35.cubin
nvcc error   : 'ptxas' died due to signal 9 (Kill signal)
[ 21% | 3<6<6 | 0.0bps ] Generating kernel_sm_37.cubin
FAILED: intern/cycles/kernel/kernel_sm_37.cubin 
cd /run/media/user/compile/yay/blender-2.8-git/src/build/intern/cycles/kernel && /opt/cuda/bin/nvcc -arch=sm_37 --cubin /run/media/user/compile/yay/blender-2.8-git/src/blender/intern/cycles/kernel/kernels/cuda/kernel.cu --ptxas-options="-v" -D CCL_NAMESPACE_BEGIN= -D CCL_NAMESPACE_END= -D NVCC -m 64 -I /run/media/user/compile/yay/blender-2.8-git/src/blender/intern/cycles/kernel/.. -I /run/media/user/compile/yay/blender-2.8-git/src/blender/intern/cycles/kernel/kernels/cuda --use_fast_math -o /run/media/user/compile/yay/blender-2.8-git/src/build/intern/cycles/kernel/kernel_sm_37.cubin
nvcc error   : 'ptxas' died due to signal 9 (Kill signal)
^Cninja: build stopped: interrupted by user.

berilac commented on 2020-03-10 13:55 (UTC)

@bartus thanks a lot. I will definitely test this

bartus commented on 2020-03-10 12:55 (UTC) (edited on 2020-03-10 12:56 (UTC) by bartus)

@berilac: you should report this to blender bugtracker.

This could be an aberration from mew adaptive sampler. To test it rebuild this package but edit _fragment=#branch=master to _fragment="#commit=4ccbbd308060f0330472828b317c59e054c9ee7b"

You can also use git bisect technique to pinpoint the issue.

berilac commented on 2020-03-10 07:48 (UTC) (edited on 2020-03-10 07:52 (UTC) by berilac)

also, I'm currently trying to diagnose an issue with cycles GPU rendering in recent 2.83 builds. have not yet been able to track down when this started, but pretty sure some earlier 2.83's were fine.

see image here (hopefully can see the issue):http://pasteall.org/pic/280f8b7c9f9be606a4a405d0af799842 more visible here: http://pasteall.org/pic/91a9f53be85857549c323297db1a0f1a

the first is just default cube, cycles, GPU, tile size 512x512. running discrete nvidia card.

downloaded standalone 2.82 from blender.org and it renders fine...

originally noticed yesterday with blender-git - hoped something different in this repo build would sort it, but apparently not.

not sure where to start diagnosing it...

edit: just suddenly decided to try rendering with "branched path tracing" and the artifacts vanish. so i guess it could be something to do with how standard path tracing is implemented

berilac commented on 2020-03-10 07:36 (UTC)

@bartus thanks. yes, I think you're right, it is a bit redundant. Now I have the deps fixed for this repo I think I will build from here instead of blender-git for now.

note: for the commit you just pushed - is it supposed to be "blender=" or "blender-" ?

bartus commented on 2020-03-10 07:03 (UTC)

@berilac: You have some point here. I can go two ways here: make it non-conflicting with blender-git by renaming /usr/share/bledner/2.83/, or explicitly add blender-git as conflict...

I think I'll choice the later, as having both blender-git and blender-2.8-git` seems redundant to me. 69ad5501effd