버전 v3은 잘 되는데, v1,v2는 오류발생
버전 v3에서는 GPU까지 동작하며 잘 되는데, v1,v2는 오류발생합니다. 아래에 메시지를 첨부합니다.
(py36_rltrader30) D:\Investment\AI-Trader-test\rltrader QuantyLab\rltrader-3.0>python main.py --mode train --ver v2 --name 005930 --stock_code
005930 --rl_method a2c --net lstm --start_date 20160104 --end_date 20181228
{"mode": "train", "ver": "v2", "name": "005930", "stock_code": ["005930"], "rl_method": "a2c", "net": "lstm", "backend": "pytorch", "start_date": "20160104", "end_date": "20181228", "lr": 0.0001, "discount_factor": 0.7, "balance": 100000000}
0%| | 0/100 [00:00<?, ?it/s]C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [0,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [1,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [2,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [3,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [4,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [5,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [6,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [7,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [8,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [9,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [10,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [11,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [12,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [13,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [14,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [15,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [16,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [5,0,0], thread: [17,0,0] Assertion input_val >= zero && input_val <= one failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [2,0,0], thread: [58,0,0] Assertion `input_val >= zero && input_val <= one` failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [2,0,0], thread: [59,0,0] Assertion `input_val >= zero && input_val <= one` failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [2,0,0], thread: [60,0,0] Assertion `input_val >= zero && input_val <= one` failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [2,0,0], thread: [61,0,0] Assertion `input_val >= zero && input_val <= one` failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [2,0,0], thread: [62,0,0] Assertion `input_val >= zero && input_val <= one` failed.
C:\cb\pytorch_1000000000000\work\aten\src\ATen\native\cuda\Loss.cu:115: block: [2,0,0], thread: [63,0,0] Assertion `input_val >= zero && input_val <= one` failed.
0%| | 0/100 [00:02<?, ?it/s]
Traceback (most recent call last):
File "main.py", line 156, in <module>
learner.run(learning=learning)
File "D:\Investment\AI-Trader-test\rltrader QuantyLab\rltrader-3.0\quantylab\rltrader\learners.py", line 297, in run
self.fit()
File "D:\Investment\AI-Trader-test\rltrader QuantyLab\rltrader-3.0\quantylab\rltrader\learners.py", line 182, in fit
loss += self.policy_network.train_on_batch(x, y_policy)
File "D:\Investment\AI-Trader-test\rltrader QuantyLab\rltrader-3.0\quantylab\rltrader\networks\networks_pytorch.py", line 168, in train_on_batch
return super().train_on_batch(x, y)
File "D:\Investment\AI-Trader-test\rltrader QuantyLab\rltrader-3.0\quantylab\rltrader\networks\networks_pytorch.py", line 83, in train_on_batch
loss += _loss.item()
RuntimeError: CUDA error: device-side assert triggered
CUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
(py36_rltrader30) D:\Investment\AI-Trader-test\rltrader QuantyLab\rltrader-3.0>
Legacy 버전을 모두 유지보수하기 어려운 상황이라 v3 사용을 권장 드립니다.