Describe the bug
Segfault on a very simple code example, with the debug flag. No segfault without the flag.
Platform : Apple M1 Pro, Mac Os 14.3.1
Python 3.10.8, numpy 1.23.5 (Same behavior with python 3.11.0, numpy 1.23.5)
To Reproduce
This is my program TestSegfault.py
import taichi as ti
import numpy as np
float_t = ti.f64
ti.init(arch=ti.cpu,default_fp=float_t,debug=True) # No segfault if debug flag is removed
def f():
x = ti.field(float_t,100)
x.fill(0)
return x
for i in range(100):
assert np.allclose(f().to_numpy(), f().to_numpy())
Log/Screenshots
% python TestSegfault.py
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301be, osx, python 3.10.8
[Taichi] Starting on arch=arm64
[E 05/01/25 11:49:40.044 3822090] Received signal 11 (Segmentation fault: 11)
* Taichi Core - Stack Traceback *
==========================================================================================
| Module | Offset | Function |
|----------------------------------------------------------------------------------------|
* taichi_python.cpython-310-darwin.so | 136 | taichi::Logger::error(std::__1::basic_ |
| string<char, std::__1::char_traits<char>, std |
| ::__1::allocator<char>> const&, bool) |
* taichi_python.cpython-310-darwin.so | 372 | taichi::(anonymous namespace)::signal_ |
| handler(int) |
* libsystem_platform.dylib | 56 | (null) |
* ??? | 811336020 | (null) |
* taichi_python.cpython-310-darwin.so | 240 | taichi::ThreadPool::target() |
* taichi_python.cpython-310-darwin.so | 44 | void* std::__1::__thread_proxy<std::__ |
| 1::tuple<std::__1::unique_ptr<std::__1::__thr |
| ead_struct, std::__1::default_delete<std::__1 |
| ::__thread_struct>>, taichi::ThreadPool::Thre |
| adPool(int)::$_1>>(void*) |
* libsystem_pthread.dylib | 136 | (null) |
* libsystem_pthread.dylib | 8 | (null) |
==========================================================================================
Internal error occurred. Check out this page for possible solutions:
https://docs.taichi-lang.org/docs/install
...
**Additional comments : ti diagnose output **
% ti diagnose
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
** Taichi Programming Language **
Docs: https://docs.taichi-lang.org/
GitHub: https://github.com/taichi-dev/taichi/
Forum: https://forum.taichi.graphics/
Taichi system diagnose:
python: 3.10.8 | packaged by conda-forge | (main, Nov 22 2022, 08:25:29) [Clang 14.0.6 ]
system: darwin
executable: /Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/bin/python3.10
platform: macOS-14.3.1-arm64-arm-64bit
architecture: 64bit
uname: uname_result(system='Darwin', node='MBPdeJeanMarie', release='23.3.0', version='Darwin Kernel Version 23.3.0: Wed Dec 20 21:30:44 PST 2023; root:xnu-10002.81.5~7/RELEASE_ARM64_T6000', machine='arm64')
locale: fr_FR.UTF-8
PATH: /Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/bin:/Users/jean-mariemirebeau/opt/miniconda3/condabin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Library/Apple/usr/bin:/usr/local/MacGPG2/bin:/Library/TeX/texbin
PYTHONPATH: ['/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/bin', '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python310.zip', '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python3.10', '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python3.10/lib-dynload', '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python3.10/site-packages']
lsb_release not available: [Errno 2] No such file or directory: 'lsb_release'
import: <module 'taichi' from '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python3.10/site-packages/taichi/init.py'>
cpu: True
metal: True
opengl: False
cuda: False
vulkan: True
glewinfo not available: [Errno 2] No such file or directory: 'glewinfo'
nvidia-smi not available: [Errno 2] No such file or directory: 'nvidia-smi'
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
[Taichi] Starting on arch=arm64
[W 05/01/25 12:13:06.182 3846091] [misc.py:adaptive_arch_select@758] Arch=[<Arch.opengl: 5>] is not supported, falling back to CPU
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
[Taichi] Starting on arch=arm64
[W 05/01/25 12:13:06.432 3846130] [misc.py:adaptive_arch_select@758] Arch=[<Arch.cuda: 3>] is not supported, falling back to CPU
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
[Taichi] Starting on arch=arm64
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
** Taichi Programming Language **
Docs: https://docs.taichi-lang.org/
GitHub: https://github.com/taichi-dev/taichi/
Forum: https://forum.taichi.graphics/
────────────────────────────────────────────────────────────────────────────────────
0: ad_gravity 25: karman_vortex_street 50: patterns
1: circle_packing_image 26: keyboard 51: pbf2d
2: comet 27: laplace 52: physarum
3: cornell_box 28: laplace_equation 53: poisson_disk_sampling
4: diff_sph 29: mandelbrot_zoom 54: print_offset
5: differential_evolution 30: marching_squares 55: rasterizer
6: euler 31: mass_spring_3d_ggui 56: regression
7: eulerfluid2d 32: mass_spring_game 57: sdf_renderer
8: explicit_activation 33: mass_spring_game_ggui 58: simple_derivative
9: export_mesh 34: mciso_advanced 59: simple_texture
10: export_ply 35: mgpcg 60: simple_uv
11: export_videos 36: mgpcg_advanced 61: snow_phaseField
12: fem128 37: minimal 62: stable_fluid
13: fem128_ggui 38: minimization 63: stable_fluid_ggui
14: fem99 39: mpm128 64: stable_fluid_graph
15: fractal 40: mpm128_ggui 65: taichi_bitmasked
16: fractal3d_ggui 41: mpm3d 66: taichi_dynamic
17: fullscreen 42: mpm3d_ggui 67: taichi_logo
18: game_of_life 43: mpm88 68: taichi_ngp
19: gui_image_io 44: mpm88_graph 69: taichi_sparse
20: gui_widgets 45: mpm99 70: texture_graph
21: implicit_fem 46: mpm_lagrangian_forces 71: tutorial
22: implicit_mass_spring 47: nbody 72: two_stream_instability
23: initial_value_problem 48: odop_solar 73: vortex_rings
24: jacobian 49: oit_renderer 74: waterwave
────────────────────────────────────────────────────────────────────────────────────
42
Running example minimal ...
[Taichi] Starting on arch=arm64
42.0
Running time: 0.12s
Consider attaching this log when maintainers ask about system information.
Running time: 2.72s
Describe the bug
Segfault on a very simple code example, with the debug flag. No segfault without the flag.
Platform : Apple M1 Pro, Mac Os 14.3.1
Python 3.10.8, numpy 1.23.5 (Same behavior with python 3.11.0, numpy 1.23.5)
To Reproduce
This is my program TestSegfault.py
Log/Screenshots
**Additional comments : ti diagnose output **
% ti diagnose
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
** Taichi Programming Language **
Docs: https://docs.taichi-lang.org/
GitHub: https://github.com/taichi-dev/taichi/
Forum: https://forum.taichi.graphics/
Taichi system diagnose:
python: 3.10.8 | packaged by conda-forge | (main, Nov 22 2022, 08:25:29) [Clang 14.0.6 ]
system: darwin
executable: /Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/bin/python3.10
platform: macOS-14.3.1-arm64-arm-64bit
architecture: 64bit
uname: uname_result(system='Darwin', node='MBPdeJeanMarie', release='23.3.0', version='Darwin Kernel Version 23.3.0: Wed Dec 20 21:30:44 PST 2023; root:xnu-10002.81.5~7/RELEASE_ARM64_T6000', machine='arm64')
locale: fr_FR.UTF-8
PATH: /Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/bin:/Users/jean-mariemirebeau/opt/miniconda3/condabin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Library/Apple/usr/bin:/usr/local/MacGPG2/bin:/Library/TeX/texbin
PYTHONPATH: ['/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/bin', '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python310.zip', '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python3.10', '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python3.10/lib-dynload', '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python3.10/site-packages']
lsb_releasenot available: [Errno 2] No such file or directory: 'lsb_release'import: <module 'taichi' from '/Users/jean-mariemirebeau/opt/miniconda3/envs/agd-hfm_dev_310/lib/python3.10/site-packages/taichi/init.py'>
cpu: True
metal: True
opengl: False
cuda: False
vulkan: True
glewinfonot available: [Errno 2] No such file or directory: 'glewinfo'nvidia-sminot available: [Errno 2] No such file or directory: 'nvidia-smi'[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
[Taichi] Starting on arch=arm64
[W 05/01/25 12:13:06.182 3846091] [misc.py:adaptive_arch_select@758] Arch=[<Arch.opengl: 5>] is not supported, falling back to CPU
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
[Taichi] Starting on arch=arm64
[W 05/01/25 12:13:06.432 3846130] [misc.py:adaptive_arch_select@758] Arch=[<Arch.cuda: 3>] is not supported, falling back to CPU
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
[Taichi] Starting on arch=arm64
[Taichi] version 1.7.3, llvm 15.0.7, commit 5ec301b, osx, python 3.10.8
** Taichi Programming Language **
Docs: https://docs.taichi-lang.org/
GitHub: https://github.com/taichi-dev/taichi/
Forum: https://forum.taichi.graphics/
────────────────────────────────────────────────────────────────────────────────────
0: ad_gravity 25: karman_vortex_street 50: patterns
1: circle_packing_image 26: keyboard 51: pbf2d
2: comet 27: laplace 52: physarum
3: cornell_box 28: laplace_equation 53: poisson_disk_sampling
4: diff_sph 29: mandelbrot_zoom 54: print_offset
5: differential_evolution 30: marching_squares 55: rasterizer
6: euler 31: mass_spring_3d_ggui 56: regression
7: eulerfluid2d 32: mass_spring_game 57: sdf_renderer
8: explicit_activation 33: mass_spring_game_ggui 58: simple_derivative
9: export_mesh 34: mciso_advanced 59: simple_texture
10: export_ply 35: mgpcg 60: simple_uv
11: export_videos 36: mgpcg_advanced 61: snow_phaseField
12: fem128 37: minimal 62: stable_fluid
13: fem128_ggui 38: minimization 63: stable_fluid_ggui
14: fem99 39: mpm128 64: stable_fluid_graph
15: fractal 40: mpm128_ggui 65: taichi_bitmasked
16: fractal3d_ggui 41: mpm3d 66: taichi_dynamic
17: fullscreen 42: mpm3d_ggui 67: taichi_logo
18: game_of_life 43: mpm88 68: taichi_ngp
19: gui_image_io 44: mpm88_graph 69: taichi_sparse
20: gui_widgets 45: mpm99 70: texture_graph
21: implicit_fem 46: mpm_lagrangian_forces 71: tutorial
22: implicit_mass_spring 47: nbody 72: two_stream_instability
23: initial_value_problem 48: odop_solar 73: vortex_rings
24: jacobian 49: oit_renderer 74: waterwave
────────────────────────────────────────────────────────────────────────────────────
42
Running example minimal ...
[Taichi] Starting on arch=arm64
42.0
Consider attaching this log when maintainers ask about system information.