Miguel Pozo pragma37
  • Joined on 2018-04-26
Miguel Pozo commented on pull request blender/blender#122232 2024-06-03 20:17:46 +02:00
GPU: Add GPU_shader_batch_create_from_infos

But this can technically work with other characters, including spaces (as long as the argument is properly quoted) and unicode in general. Would you really prefer to limit it to a small easily…

Miguel Pozo commented on pull request blender/blender#122232 2024-06-03 20:14:07 +02:00
GPU: Add GPU_shader_batch_create_from_infos

I've renamed it to create. Being very nitpicky, launch may sound like the process has already been created and is silently waiting to start.

Miguel Pozo pushed to pull-gpu-batch-compilation at pragma37/blender 2024-06-03 20:07:54 +02:00
31d4e97c6f Replace widechar conversion code
59f0ff34f9 Rename Subprocess::init > create
2282af10eb Increase max path lenght on Windows
863a637e37 Fix SharedSemaphore ownership
5ceab70460 Improve error handling (Linux)
Compare 7 commits »
Miguel Pozo pushed to test-parallel-compilation-workers-2 at pragma37/blender 2024-06-03 20:07:25 +02:00
12ee2e8e52 Replace widechar conversion code
5564a80b0a Rename Subprocess::init > create
36d2e41e43 Increase max path lenght on Windows
Compare 3 commits »
Miguel Pozo pushed to test-parallel-compilation-workers-2 at pragma37/blender 2024-06-03 19:43:01 +02:00
0e41606da9 Fix SharedSemaphore ownership
0f812b4d15 Improve error handling (Linux)
Compare 2 commits »
Miguel Pozo pushed to test-parallel-compilation-workers-2 at pragma37/blender 2024-06-03 17:40:52 +02:00
0db9f2f558 Improve error reports (Windows)
e8acf49bd0 Fix SharedMemory handle check
Compare 2 commits »
Miguel Pozo commented on pull request blender/blender#122232 2024-06-03 12:23:06 +02:00
GPU: Add GPU_shader_batch_create_from_infos

I don't have a strong opinion on disabling it for --debug-gpu-force-workaround. I guess it makes sense even if it's disabled by default. It might be useful to have something like --gpu-max-comp…

Miguel Pozo commented on pull request blender/blender#122232 2024-05-31 19:37:28 +02:00
GPU: Add GPU_shader_batch_create_from_infos

On Linux there's still no way to check if the process is still running, we could use the PID even if it's not 100% reliable, since we have to use a timeout too anyway.

Turns out this is not…

Miguel Pozo pushed to pull-gpu-batch-compilation at pragma37/blender 2024-05-31 19:27:45 +02:00
c21a9d87a0 Fix arguments string (Windows)
45979ef9e7 Prevent compiler processes from outliving their parent (Linux)
822f6db894 Subprocess::is_running() (Linux)
0d1b12213e Fix Linux path
Compare 4 commits »
Miguel Pozo pushed to test-parallel-compilation-workers-2 at pragma37/blender 2024-05-31 19:27:02 +02:00
a1af99a796 Fix arguments string (Windows)
Miguel Pozo pushed to test-parallel-compilation-workers-2 at pragma37/blender 2024-05-31 19:01:06 +02:00
061d7cf34b Prevent compiler processes from outliving their parent (Linux)
37a3df62e5 Revert "Prevent child processes from outliving their parents"
1aaa565bad Prevent child processes from outliving their parents
b588f1f989 Subprocess::is_running() (Linux)
5fc410f7c3 Fix Linux path
Compare 5 commits »
Miguel Pozo commented on pull request blender/blender#122232 2024-05-31 00:44:49 +02:00
GPU: Add GPU_shader_batch_create_from_infos

I have moved the IPC API to blenlib and added a Subprocess class. I've implemented it on Windows using the method suggested by @LazyDodo and on Linux using fork and execv.

One weird…

Miguel Pozo pushed to pull-gpu-batch-compilation at pragma37/blender 2024-05-31 00:23:41 +02:00
4395ce1d29 Don't pass path as argv[0]
dcd87d56d5 blender::Subprocess (Linux) (WIP)
b1155d7d44 Linux fixes
bba1ec18d7 blender::Subprocess (Windows)
e054d62f2b Move ipc API to blenlib
Compare 5 commits »
Miguel Pozo pushed to test-parallel-compilation-workers-2 at pragma37/blender 2024-05-31 00:09:25 +02:00
8a926fe548 Don't pass path as argv[0]
Miguel Pozo pushed to test-parallel-compilation-workers-2 at pragma37/blender 2024-05-30 23:44:20 +02:00
db252bc601 blender::Subprocess (Linux) (WIP)
1e71f24a60 Linux fixes
Compare 2 commits »
Miguel Pozo pushed to test-parallel-compilation-workers-2 at pragma37/blender 2024-05-30 19:13:45 +02:00
4a861e3115 blender::Subprocess (Windows)
02c6a13f25 Move ipc API to blenlib
Compare 2 commits »
Miguel Pozo commented on pull request blender/blender#122232 2024-05-29 20:06:11 +02:00
GPU: Add GPU_shader_batch_create_from_infos

I've been looking into the Chromium implementation of subprocesses (I found Firefox harder to figure out). As far I understand, on Windows they use CreateProcessAsUser (https://github.com/chromi

Miguel Pozo commented on pull request blender/blender#122232 2024-05-29 17:39:30 +02:00
GPU: Add GPU_shader_batch_create_from_infos
int ch = fgetc(pipe);
    if (ch == EOF) {
      break;
    }

Yesterday I tried something like this (and checking for errno) after I saw Clément's comment, but I couldn't get it…

Miguel Pozo commented on pull request blender/blender#121925 2024-05-29 17:14:10 +02:00
WIP: GPU: Subprocess based parallel shader compilation

@Sergey I did open this one mainly for blender-bot builts, it was never meant for review. This PR contains all the changes related to parallel compilation which I plan to split into several…

Miguel Pozo commented on pull request blender/blender#122232 2024-05-29 17:08:25 +02:00
GPU: Add GPU_shader_batch_create_from_infos

I had a talk with @Sergey about the subprocess being lost. He did some test and waiting for the pipe to close (returning EOL) was enough to know if the subprocess has crashed. Maybe he has…