LeelaChessZero/lc0

Open source neural network chess engine with GPU acceleration and broad hardware support.

해결하는 문제

Lc0는 신경망을 사용하여 체스를 플레이하고 평가하는 UCI 호환 체스 엔진입니다. Leela Chess Zero 프로젝트에서 훈련된 신경망 가중치를 실행할 수 있는 계산 프레임워크를 제공하여, 전통적인 수작업 평가 함수가 아닌 딥러닝 기반의 고수준 체스 플레이를 가능하게 합니다.

작동 방식

Lc0는 신경망을 실행하여 체스 위치를 평가하는 엔진으로 작동합니다. 다음과 같은 다양한 하드웨어 백엔드를 지원하여 성능을 최적화합니다:

  • GPU: CUDA (NVIDIA), HIP/ROCm (AMD), Metal Performance Shaders (Apple), SYCL (Intel/AMD).
  • CPU: OpenBLAS 또는 Intel의 DNNL과 같은 BLAS 호환 라이브러리.
  • ONNX Runtime: 여러 실행 제공자 (CPU, CUDA, ROCm, DirectML).

엔진은 C++20으로 작성되었으며, 제공되는 바인딩을 통해 Python에 통합할 수 있습니다.

대상 사용자

  • 분석이나 플레이에 강력한 신경망 기반 엔진을 사용하고 싶은 체스 애호가.
  • Python 바인딩을 통해 자체 애플리케이션에 신경망 체스 평가를 통합하고자 하는 개발자.
  • 다양한 GPU 및 CPU 아키텍처에서 신경망이 어떻게 배포되는지에 관심이 있는 하드웨어 최적화 전문가.

주요 특징

  • UCI 호환: 표준 체스 GUI와 호환됩니다.
  • 광범위한 하드웨어 지원: NVIDIA, AMD, Intel, Apple Silicon에 대한 광범위한 지원.
  • 크로스 플랫폼: Linux, Windows, macOS에서 빌드 가능.
  • Python 바인딩: 위치 평가에 프로그래밍 방식으로 접근할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트