DLL 없이 MetaTrader 5 터미널에서 직접 OpenCL로 할 수 있는 일은 다음과 같습니다. - 페이지 15

 
Ilyas :
  1. 터미널을 닫다
  2. 레지스트리 분기 "HKEY_CURRENT_USER\Software\MetaQuotes Software"에서 OpenCL 값을 삭제합니다.
  3. 터미널 실행 및 테스트

시작하기 전에 OpenCL 키를 제거했습니다. 동작은 변경되지 않았습니다.

저것들. Expert Advisor가 CLContextCreate(CL_USE_GPU_ONLY)로 처음 실행될 때 위의 오류가 생성되고 Expert Advisor가 실행되지 않습니다. 두 번째 실행부터는 OpenCL 장치 초기화 로그가 더 이상 표시되지 않고 전문가 로그에 오류만 남고 EA가 작동하지 않습니다. 터미널이 다시 로드되면 수정 된 CLContextCreate(0) 명령이 있는 EA가 작동합니다. 즉, 매우 사실적인 바다 경치가 나타납니다. 동시에 초기화 로그에는 동일한 성능 테스트 오류가 있고 EA 로그에는 묵음이 있습니다.

키가 약간 변경되었습니다.

[HKEY_CURRENT_USER\Software\MetaQuotes 소프트웨어]

이전 - "OpenCL"=hex:91,57,f4,f8,2e,0b,19,c5,e9,ef,30,dd,c9,a9,af,8c,00,00,00,00,00, 00,00,00,58,f7,f7,28,88,c5,e1,77,3c,4c,f8,8a,4d,31,88,88,6c,2a,09,a4,b3,d8, e2,3f

이후 - "OpenCL"=hex:91,57,f4,f8,2e,0b,19,c5,e9,ef,30,dd,c9,a9,af,8c,00,00,00,00,00, 00,00,00,58,f7,f7,28,88,c5,e1,77,3c,4c,f8,8a,4d,31,88,88,98,6b,19,ab,41,5c, fd,3f

원칙적으로 이 동작은 전문가/스크립트가 수정되고 장치가 우회되어 명시적으로 액세스하고 CL_DEVICE_TYPE 속성을 확인하는 경우 중요하지 않습니다. 자체 등급이 있는 장치에 제어된 방식으로 작업을 배포하는 것이 IMHO보다 훨씬 좋습니다. 초기화 오류가 있다는 사실은 단순히 불쾌합니다. OpenCL이 전투에서 어떻게 더 나아갈지 누가 압니까?

커널을 작성하고 테스트하기 위해 OpenCL 응용 프로그램 2016 R2용 원본 인텔 SDK를 찾는 데 도움을 주십시오. 인텔에서 러시아어로 작성하는 것은 쓸모가 없습니다.)

AMDshny SDK를 사용해 보시겠습니까?

 
베타 2543으로 업데이트해 보세요.
 
directx가 더 안정적이지만 계산을 위해서는 변태해야 하고 이중성이 없습니다.
 
Ilyas :
베타 2543으로 업데이트해 보세요.

베타 2545, 릴리스 2560.

처음에는   시작   스크립트:

Scripts script Seascape (GBPUSD,H1) loaded successfully
OpenCL  device #0 : GPU Intel(R) Corporation Intel(R) HD Graphics 4400 with OpenCL 1.2 ( 20 units, 400 MHz, 1425 Mb, version 10.18 . 14.5117 )
OpenCL  device #1 : CPU Intel(R) Corporation Intel(R) Core(TM) i7- 4500 U CPU @ 1.80 GHz with OpenCL 1.2 ( 4 units, 1800 MHz, 8087 Mb, version 4.2 . 0.148 , rating 21 )
OpenCL  device performance test started
OpenCL  test compilation failed with error: 
': 9 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 
: 10 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 
: 11 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 
: 12 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 
: 13 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 
: 20 : 4 : error: use of type ' double ' requires cl_khr_fp64 extension to b
                
OpenCL  device #0 performance test error: 'cannot create OpenCL program ( 5105 )'
OpenCL  device performance test finished with error(s)
OpenCL  device #0 : GPU Intel(R) Corporation Intel(R) HD Graphics 4400 with OpenCL 1.2 ( 20 units, 400 MHz, 1425 Mb, version 10.18 . 14.5117 )
OpenCL  device #1 : CPU Intel(R) Corporation Intel(R) Core(TM) i7- 4500 U CPU @ 1.80 GHz with OpenCL 1.2 ( 4 units, 1800 MHz, 8087 Mb, version 4.2 . 0.148 , rating 21 )
Scripts script Seascape (GBPUSD,H1) removed
~에   시작   CLContextCreate 가 있는 스크립트(CL_USE_GPU_ONLY):
Seascape (GBPUSD,H1)    OpenCL not found. Error= 5114
 

1 년 전에 약한 태블릿에서 모든 것이 잘 작동했음에도 불구하고 비슷한 오류가 있습니다.

OpenCL  device #0 : GPU Intel(R) Corporation Intel(R) HD Graphics 400 with OpenCL 1.2 ( 12 units, 600 MHz, 1598 Mb, version 20.19 . 15.4364 )
OpenCL  device #1 : CPU Intel(R) Corporation  Intel(R) Atom(TM) x5-Z8550 CPU @ 1.44 GHz with OpenCL 1.2 ( 4 units, 1440 MHz, 4016 Mb, version 5.2 . 0.10094 )
OpenCL  device performance test started
OpenCL  test compilation failed with error: ' 1 : 9 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 1 : 10 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 1 : 11 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 1 : 12 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 1 : 13 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 1 : 20 : 4 : error: use of type ' double ' requires cl_khr_fp64 extensio
OpenCL  device #0 performance test error: 'cannot create OpenCL program ( 5105 )'
OpenCL  test compilation failed with error: 'Compilation started 2 : 9 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 2 : 10 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 2 : 11 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 2 : 12 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 2 : 13 : 25 : error: use of type ' double ' requires cl_khr_fp64 extension to be enabled 2 : 20 : 4 : error: use of type ' double ' requires 
OpenCL  device #1 performance test error: 'cannot create OpenCL program ( 5105 )'
OpenCL  device performance test finished with error(s)
OpenCL  device #0 : GPU Intel(R) Corporation Intel(R) HD Graphics 400 with OpenCL 1.2 ( 12 units, 600 MHz, 1598 Mb, version 20.19 . 15.4364 )
OpenCL  device #1 : CPU Intel(R) Corporation  Intel(R) Atom(TM) x5-Z8550 CPU @ 1.44 GHz with OpenCL 1.2 ( 4 units, 1440 MHz, 4016 Mb, version 5.2 . 0.10094 )
이제 작동하지도 않습니다.
 void OnStart ()
{
        Print( CLContextCreate ( CL_USE_ANY ));
}

매개변수 사용: CL_USE_ANY, CL_USE_CPU_ONLY, CL_USE_GPU_ONLY - 결과: -1 오류 코드: 5115

매개변수 사용: 0, 1 - 결과가 양수입니다.

 
aim-1 :

베타 2545, 릴리스 2560.

처음에는   시작   스크립트:

~에   시작   CLContextCreate(CL_USE_GPU_ONLY)가 있는 스크립트:

귀하의 카드는 이중 계산을 지원하지 않습니다:

use of type 'double' requires cl_khr_fp64 extension to be enabled

재무 계산에서는 큰 반올림으로 인해 float 수학을 사용할 수 없으므로 이중 계산에 대한 지원이 명시적으로 필요합니다.

우리는 OpenCL이 double 없이 활성화되도록 허용했지만 그것은 말이 되지 않았습니다.

이제 우리는 분명히 제한하고 있습니다.

 
A100 :

1 년 전에 약한 태블릿에서 모든 것이 잘 작동했음에도 불구하고 비슷한 오류가 있습니다.

이제 작동하지도 않습니다.

매개변수 사용: CL_USE_ANY, CL_USE_CPU_ONLY, CL_USE_GPU_ONLY - 결과: -1 오류 코드: 5115

매개변수 사용: 0, 1 - 결과가 양수입니다.

Atom에서 double에 대해 동일한 오류가 발생한다는 사실은 매우 이상합니다.

확인하겠습니다.

 
Renat Fatkhullin :

Atom 에서 double에 대해 동일한 오류가 발생한다는 사실은 매우 이상합니다.

그래서 더블도 지원하지 않는다.

터미널에 이러한 지원이 필요하다는 자체가 이상합니다. 예를 들어 .cl 파일에 double이 전혀 없고 정확한 과학적 계산을 위해 OpenCL을 사용하지 않습니다.

또한 이것은 오래된 Atom이 아니라 별도의 GPU가 있는 최신 Atom입니다.

 
Renat Fatkhullin :

귀하의 카드는 이중 결제를 지원하지 않습니다

장치 자체에 물어봅시다.

 void OnStart () {
    int clCtx= CLContextCreate ( 0 );
    if (clCtx == - 1 ) Print ( "ERROR in CLContextCreate" );
   string str;
   if ( CLGetInfoString (clCtx, CL_DEVICE_NAME ,str))        Print ( "OpenCL device name: " ,str);
   if ( CLGetInfoString (clCtx, CL_DEVICE_EXTENSIONS ,str))  Print ( "OpenCL device ext: " ,str);
   CLContextFree (clCtx); }

탱크 응답:


OpenCL 장치 이름: Intel(R) HD Graphics 4400

오픈 CL 장치 EXT : cl_intel_accelerator cl_intel_advanced_motion_estimation cl_intel_ctz cl_intel_d3d11_nv12_media_sharing cl_intel_dx9_media_sharing cl_intel_motion_estimation cl_intel_simultaneous_sharing cl_intel_subgroups cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_d3d10_sharing cl_khr_d3d11_sharing cl_khr_depth_images cl_khr_dx9_media_sharing cl_khr_gl_depth_images cl_khr_gl_event cl_khr_gl_msaa_sharing cl_khr_gl_sharing cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_image2d_from_buffer cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_spir


실제로 cl_khr_fp64에 대한 지원이 없습니다.

공식 사양은 온라인에서 찾을 수 없습니다.   Intel HD Graphics 4400 은 드라이버 문제가 아닌지 확인하기 위한 배정밀도 정보가 없습니다.

 

이 경우에만 왼쪽 벤치마크를 통해 비디오 카드에 FP64가 있는지 확인합니다.

https://askgeek.io/ru/gpus/vs/Intel_HD-Graphics-515-vs-Intel_HD-Graphics-4400

그건 그렇고, Renat의 그래픽 보조 프로세서도 FP64 지원이 부족한 것 같습니다.

https://askgeek.io/ru/gpus/vs/Intel_HD-Graphics-515-vs-Intel_UHD-Graphics-630

Renat, 위의 스크립트를 실행하여 IGP가 배정밀도를 지원하는지 확인할 수 있습니까?

그렇다면 성능 테스트가 성공한 이유가 분명해질 것입니다.

그런 다음 OpenCL로 보내기 전에 mqlrates -arrays를 CPU의 int로 전송하고 Digits 를 곱하는 옵션을 시도해 보십시오. 메모리 사용량이 2배 적습니다. 그런 다음 벡터나 수레를 가지고 놀고 오류가 발생하지 않도록 주의하십시오. 원칙적으로 지붕 위의 Digits + 1 표시기의 정확도는 충분해야 합니다.

날짜/시간은 또한 하루의 1440분이 처음 12비트(처음 2바이트)에 꿰매어지고 상위 비트에 일이 있으면 int로 쉽게 변환할 수 있습니다. int 대 double의 속도 향상은 커널 의 오버헤드 사용자 지정 iTime 유사 기능을 처리하기에 충분해야 합니다.

Главная
Главная
  • askgeek.io
Сравнительный анализ видеокарт Intel HD Graphics 515 и Intel UHD Graphics 630 по всем известным характеристикам в категориях: Общая информация, Технические характеристики, Видеовыходы и порты, Совместимость, размеры, требования, Поддержка API, Память, Поддержка технологий. Анализ производительности видеокарт по бенчмаркам: PassMark - G2D Mark...