PaddlePaddle / PARL

A high-performance distributed training framework for Reinforcement Learning
https://parl.readthedocs.io/
Apache License 2.0
3.25k stars 820 forks source link

OAC模型训练报错 #1029

Closed hadoop2xu closed 1 year ago

hadoop2xu commented 1 year ago

环境信息: python3.6 mujoco-py 2.1.2.14 mujoco 210 执行 python3.6 train.py --env Humanoid-v2 , 报错: creating /usr/lib/python3.6/site-packages/mujoco_py/generated/_pyxbld_2.0.2.8_36_linuxcpuextensionbuilder/temp.linux-x86_64-3.6/usr/lib/python3.6/site-packages/mujoco_py/gl gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/usr/lib/python3.6/site-packages/mujoco_py -I/root/.mujoco/mujoco200/include -I/usr/lib/python3.6/site-packages/numpy/core/include -I/usr/include/python3.6m -c /usr/lib/python3.6/site-packages/mujoco_py/cymj.c -o /usr/lib/python3.6/site-packages/mujoco_py/generated/_pyxbld_2.0.2.8_36_linuxcpuextensionbuilder/temp.linux-x86_64-3.6/usr/lib/python3.6/site-packages/mujoco_py/cymj.o -fopenmp -w /usr/lib/python3.6/site-packages/mujoco_py/cymj.c: In function 'pyx_f_9mujoco_py_4cymj_11PyMjvFigure__set': /usr/lib/python3.6/site-packages/mujoco_py/cymj.c:77635:91: error: subscripted value is neither array nor pointer nor vector pyx_t_1 = ((PyObject *)pyx_f_9mujoco_py_4cymjwrap_float_1d((&(pyx_v_p->linewidth[0])), 0x64)); if (unlikely(!pyx_t_1)) PYX_ERR(4, 3829, __pyx_L1_error) ^ /usr/lib/python3.6/site-packages/mujoco_py/cymj.c: In function 'pyx_pf_9mujoco_py_4cymj_11PyMjvFigure_9legendoff_get': /usr/lib/python3.6/site-packages/mujoco_py/cymj.c:78275:53: error: 'mjvFigure {aka struct _mjvFigure}' has no member named 'legendoff' pyx_t_1 = __Pyx_PyInt_From_int(pyx_v_self->ptr->legendoff); if (unlikely(!pyx_t_1)) PYX_ERR(4, 3860, pyx_L1_error) ^ /usr/lib/python3.6/site-packages/mujoco_py/cymj.c: In function '__pyx_pf_9mujoco_py_4cymj_11PyMjvFigure_9legendoff_2set': /usr/lib/python3.6/site-packages/mujoco_py/cymj.c:78330:20: error: 'mjvFigure {aka struct _mjvFigure}' has no member named 'legendoff' pyx_v_self->ptr->legendoff = __pyx_v_x; ^ Traceback (most recent call last): File "/usr/lib/python3.6/distutils/unixccompiler.py", line 118, in _compile extra_postargs) File "/usr/lib/python3.6/distutils/ccompiler.py", line 909, in spawn spawn(cmd, dry_run=self.dry_run) File "/usr/lib/python3.6/distutils/spawn.py", line 36, in spawn _spawn_posix(cmd, search_path, dry_run=dry_run) File "/usr/lib/python3.6/distutils/spawn.py", line 159, in _spawn_posix % (cmd, exit_status)) distutils.errors.DistutilsExecError: command 'gcc' failed with exit status 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "train.py", line 168, in main() File "train.py", line 90, in main env = gym.make(args.env) File "/usr/lib/python3.6/site-packages/gym/envs/registration.py", line 183, in make return registry.make(id, kwargs) File "/usr/lib/python3.6/site-packages/gym/envs/registration.py", line 125, in make env = spec.make(kwargs) File "/usr/lib/python3.6/site-packages/gym/envs/registration.py", line 88, in make cls = load(self._entry_point) File "/usr/lib/python3.6/site-packages/gym/envs/registration.py", line 17, in load mod = importlib.import_module(mod_name) File "/usr/lib/python3.6/importlib/init.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "", line 994, in _gcd_import File "", line 971, in _find_and_load File "", line 955, in _find_and_load_unlocked File "", line 665, in _load_unlocked File "", line 678, in exec_module File "", line 219, in _call_with_frames_removed File "/usr/lib/python3.6/site-packages/gym/envs/mujoco/init.py", line 1, in from gym.envs.mujoco.mujoco_env import MujocoEnv File "/usr/lib/python3.6/site-packages/gym/envs/mujoco/mujoco_env.py", line 11, in import mujoco_py File "/usr/lib/python3.6/site-packages/mujoco_py/init.py", line 3, in from mujoco_py.builder import cymj, ignore_mujoco_warnings, functions, MujocoException File "/usr/lib/python3.6/site-packages/mujoco_py/builder.py", line 506, in cymj = load_cython_ext(mujoco_path) File "/usr/lib/python3.6/site-packages/mujoco_py/builder.py", line 105, in load_cython_ext cext_so_path = builder.build() File "/usr/lib/python3.6/site-packages/mujoco_py/builder.py", line 221, in build built_so_file_path = self._build_impl() File "/usr/lib/python3.6/site-packages/mujoco_py/builder.py", line 273, in _build_impl so_file_path = super()._build_impl() File "/usr/lib/python3.6/site-packages/mujoco_py/builder.py", line 244, in _build_impl dist.run_commands() File "/usr/lib/python3.6/distutils/dist.py", line 955, in run_commands self.run_command(cmd) File "/usr/lib/python3.6/distutils/dist.py", line 974, in run_command cmd_obj.run() File "/usr/lib/python3.6/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run _build_ext.build_ext.run(self) File "/usr/lib/python3.6/distutils/command/build_ext.py", line 339, in run self.build_extensions() File "/usr/lib/python3.6/site-packages/mujoco_py/builder.py", line 144, in build_extensions build_ext.build_extensions(self) File "/usr/lib/python3.6/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions _build_ext.build_ext.build_extensions(self) File "/usr/lib/python3.6/distutils/command/build_ext.py", line 448, in build_extensions self._build_extensions_serial() File "/usr/lib/python3.6/distutils/command/build_ext.py", line 473, in _build_extensions_serial self.build_extension(ext) File "/usr/lib/python3.6/distutils/command/build_ext.py", line 533, in build_extension depends=ext.depends) File "/usr/lib/python3.6/distutils/ccompiler.py", line 574, in compile self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts) File "/usr/lib/python3.6/distutils/unixccompiler.py", line 120, in _compile raise CompileError(msg) distutils.errors.CompileError: command 'gcc' failed with exit status 1

ShuaibinLi commented 1 year ago

你的报错是mujoco环境的问题,建议使用OAC README中提供的gym和mujoco版本安装使用v4版本的mujoco环境

hadoop2xu commented 1 year ago

你的报错是mujoco环境的问题,建议使用OAC README中提供的gym和mujoco版本安装使用v4版本的mujoco环境 按照建议安装环境,还是报错:

image

root@isa-ThinkStation-P520:/docker_workspace/baidu/xpu/PARL/examples/OAC# python3 train.py [01-03 08:06:56 MainThread @logger.py:242] Argv: train.py E0000 00:00:00.000000 47352 dir_reader_linux.h:41] RAW: Failed to close directory handle [01-03 08:06:57 MainThread @utils.py:73] paddlepaddle version: 2.4.1. [01-03 08:06:57 MainThread @train.py:85] ------------------- OAC --------------------- [01-03 08:06:57 MainThread @train.py:86] Env: Humanoid-v4, Seed: 0 [01-03 08:06:57 MainThread @train.py:87] --------------------------------------------- running build_ext building 'mujoco_py.cymj' extension gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py -I/root/.mujoco/mujoco210/include -I/usr/local/src/python37/lib/python3.7/site-packages/numpy/core/include -I/usr/local/src/python37/include/python3.7m -c /usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/cymj.c -o /usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/generated/_pyxbld_2.1.2.14_37_linuxcpuextensionbuilder/temp.linux-x86_64-3.7/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/cymj.o -fopenmp -w gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py -I/root/.mujoco/mujoco210/include -I/usr/local/src/python37/lib/python3.7/site-packages/numpy/core/include -I/usr/local/src/python37/include/python3.7m -c /usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/gl/osmesashim.c -o /usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/generated/_pyxbld_2.1.2.14_37_linuxcpuextensionbuilder/temp.linux-x86_64-3.7/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/gl/osmesashim.o -fopenmp -w /usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/gl/osmesashim.c:1:23: fatal error: GL/osmesa.h: No such file or directory compilation terminated. Traceback (most recent call last): File "/usr/local/src/python37/lib/python3.7/distutils/unixccompiler.py", line 118, in _compile extra_postargs) File "/usr/local/src/python37/lib/python3.7/distutils/ccompiler.py", line 910, in spawn spawn(cmd, dry_run=self.dry_run) File "/usr/local/src/python37/lib/python3.7/distutils/spawn.py", line 36, in spawn _spawn_posix(cmd, search_path, dry_run=dry_run) File "/usr/local/src/python37/lib/python3.7/distutils/spawn.py", line 159, in _spawn_posix % (cmd, exit_status)) distutils.errors.DistutilsExecError: command 'gcc' failed with exit status 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "train.py", line 168, in main() File "train.py", line 90, in main env = gym.make(args.env) File "/usr/local/src/python37/lib/python3.7/site-packages/gym/envs/registration.py", line 581, in make envcreator = load(spec.entry_point) File "/usr/local/src/python37/lib/python3.7/site-packages/gym/envs/registration.py", line 61, in load mod = importlib.import_module(mod_name) File "/usr/local/src/python37/lib/python3.7/importlib/init.py", line 127, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "", line 1006, in _gcd_import File "", line 983, in _find_and_load File "", line 953, in _find_and_load_unlocked File "", line 219, in _call_with_frames_removed File "", line 1006, in _gcd_import File "", line 983, in _find_and_load File "", line 967, in _find_and_load_unlocked File "", line 677, in _load_unlocked File "", line 728, in exec_module File "", line 219, in _call_with_frames_removed File "/usr/local/src/python37/lib/python3.7/site-packages/gym/envs/mujoco/init.py", line 1, in from gym.envs.mujoco.mujoco_env import MujocoEnv, MuJocoPyEnv # isort:skip File "/usr/local/src/python37/lib/python3.7/site-packages/gym/envs/mujoco/mujoco_env.py", line 14, in import mujoco_py File "/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/init.py", line 2, in from mujoco_py.builder import cymj, ignore_mujoco_warnings, functions, MujocoException File "/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/builder.py", line 504, in cymj = load_cython_ext(mujoco_path) File "/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/builder.py", line 110, in load_cython_ext cext_so_path = builder.build() File "/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/builder.py", line 226, in build built_so_file_path = self._build_impl() File "/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/builder.py", line 278, in _build_impl so_file_path = super()._build_impl() File "/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/builder.py", line 249, in _build_impl dist.run_commands() File "/usr/local/src/python37/lib/python3.7/distutils/dist.py", line 966, in run_commands self.run_command(cmd) File "/usr/local/src/python37/lib/python3.7/distutils/dist.py", line 985, in run_command cmd_obj.run() File "/usr/local/src/python37/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run _build_ext.build_ext.run(self) File "/usr/local/src/python37/lib/python3.7/distutils/command/build_ext.py", line 340, in run self.build_extensions() File "/usr/local/src/python37/lib/python3.7/site-packages/mujoco_py/builder.py", line 149, in build_extensions build_ext.build_extensions(self) File "/usr/local/src/python37/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions _build_ext.build_ext.build_extensions(self) File "/usr/local/src/python37/lib/python3.7/distutils/command/build_ext.py", line 449, in build_extensions self._build_extensions_serial() File "/usr/local/src/python37/lib/python3.7/distutils/command/build_ext.py", line 474, in _build_extensions_serial self.build_extension(ext) File "/usr/local/src/python37/lib/python3.7/distutils/command/build_ext.py", line 534, in build_extension depends=ext.depends) File "/usr/local/src/python37/lib/python3.7/distutils/ccompiler.py", line 574, in compile self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts) File "/usr/local/src/python37/lib/python3.7/distutils/unixccompiler.py", line 120, in _compile raise CompileError(msg) distutils.errors.CompileError: command 'gcc' failed with exit status 1

ShuaibinLi commented 1 year ago

尝试下卸载mujoco-py呢,pip uninstall mujoco-py