Segfault when running benchmark-cli #101871

Closed
opened 2023-08-17 13:13:55 +02:00 by Paul Melis · 1 comment

I'm trying to get benchmark-cli running from the command-line. The option parsing seems pretty picky and easily segfaults when something is not specified, but I can't figure out what's wrong with this line:

./benchmark-launcher-cli --verbose 3 benchmark --blender-version 3.6.0 --device-name "AMD EPYC 9654 96-Core Processor CPU" --device-type CPU --json

panic: runtime error: invalid memory address or nil pointer dereference                                                                                                                                                                                                                                                                                   [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x4fd429]                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              goroutine 1 [running]:                                                                                                                                                                                                                                                                                                                                    log.(*Logger).Output(0x0, 0x2, {0xc0002e0210, 0x17})                                                                                                                                                                                                                                                                                                              /home/sergey/lib/go/src/log/log.go:165 +0x89                                                                                                                                                                                                                                                                                                      log.(*Logger).Printf(0xc0002e01f8, {0x83eb62, 0x200000003}, {0xc0002cdf40, 0xc0002cdf70, 0x408459})                                                                                                                                                                                                                                                               /home/sergey/lib/go/src/log/log.go:191 +0x4c                                                                                                                                                                                                                                                                                                      git.blender.org/blender-open-data/launcher/internal.ExitWithError({0x8cd3c0, 0xc0002a1a80})                                                                                                                                                                                                                                                                       /home/sergey/Developer/blender-open-data/launcher/internal/application.go:10 +0x68                                                                                                                                                                                                                                                                main.main()                                                                                                                                                                                                                                                                                                                                                       /home/sergey/Developer/blender-open-data/launcher/cmd/benchmark-launcher-cli/main.go:14 +0x38           

Blender 3.6.0 has previously been downloaded with the download command and the CPU name is as output by the devices command:

snellius paulm@tcn1221 13:12 ~/software/benchmark-launcher-cli-3.1.0$ ./benchmark-launcher-cli -b 3.6.0 devices                                                                                                                                                                                                                                           AMD EPYC 9654 96-Core Processor CPU                      

This is with benchmark-launcher-cli-3.1.0 on Linux. Interactive use of benchmark-launcher-cli works as intended.

I'm trying to get benchmark-cli running from the command-line. The option parsing seems pretty picky and easily segfaults when something is not specified, but I can't figure out what's wrong with this line: ``` ./benchmark-launcher-cli --verbose 3 benchmark --blender-version 3.6.0 --device-name "AMD EPYC 9654 96-Core Processor CPU" --device-type CPU --json panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x4fd429] goroutine 1 [running]: log.(*Logger).Output(0x0, 0x2, {0xc0002e0210, 0x17}) /home/sergey/lib/go/src/log/log.go:165 +0x89 log.(*Logger).Printf(0xc0002e01f8, {0x83eb62, 0x200000003}, {0xc0002cdf40, 0xc0002cdf70, 0x408459}) /home/sergey/lib/go/src/log/log.go:191 +0x4c git.blender.org/blender-open-data/launcher/internal.ExitWithError({0x8cd3c0, 0xc0002a1a80}) /home/sergey/Developer/blender-open-data/launcher/internal/application.go:10 +0x68 main.main() /home/sergey/Developer/blender-open-data/launcher/cmd/benchmark-launcher-cli/main.go:14 +0x38 ``` Blender 3.6.0 has previously been downloaded with the `download` command and the CPU name is as output by the `devices` command: ``` snellius paulm@tcn1221 13:12 ~/software/benchmark-launcher-cli-3.1.0$ ./benchmark-launcher-cli -b 3.6.0 devices AMD EPYC 9654 96-Core Processor CPU ``` This is with benchmark-launcher-cli-3.1.0 on Linux. Interactive use of `benchmark-launcher-cli` works as intended.
Author

Sigh, of course I find the problem minutes after submitting this issue. I was missing the scene name in the command. This works:

snellius paulm@tcn1221 13:17 ~/software/benchmark-launcher-cli-3.1.0$ ./benchmark-launcher-cli benchmark monster --blender-version 3.6.0 --device-name "AMD EPYC 9654 96-Core Processor" --device-type CPU --json
Sigh, of course I find the problem minutes after submitting this issue. I was missing the scene name in the command. This works: ``` snellius paulm@tcn1221 13:17 ~/software/benchmark-launcher-cli-3.1.0$ ./benchmark-launcher-cli benchmark monster --blender-version 3.6.0 --device-name "AMD EPYC 9654 96-Core Processor" --device-type CPU --json ```
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: infrastructure/blender-open-data#101871
No description provided.