• 제목/요약/키워드: GPU 구현

검색결과 254건 처리시간 0.103초

GPU 상에서의 최적화 암호 구현과 암호의 GPU 내성 (Efficient Implementation of Cryptography on GPU and GPU Resistance of Cryptography)

  • 서화정;권혁동;김현준;엄시우;심민주
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2021년도 추계학술발표대회
    • /
    • pp.263-266
    • /
    • 2021
  • GPU 상에서의 효율적인 암호 구현을 위해서는 GPU 내부의 자원인 메모리와 명령어셋을 구현하고자 하는 암호 구조에 맞추어 사용하는 것이 중요하다. 본 논문에서는 Blowfish와 RC4를 최신 GPU 프로세서 상에서 최적 구현해 보고 성능을 저하시키는 요인들과 향상시키는 요인들을 비교 분석한다. 특히 파일암호화와 패스워드 크래킹에서 발생하는 암호화 구현 고려 사항에 대해 확인하며 해당 특징이 GPU 암호 구현 상에서 미치는 영향에 대해 확인해 보도록 한다. 마지막으로 앞에서 구현한 결과물의 성능을 저하시키는 요소에 대한 분석을 기반으로하여 높은 GPU 내성을 가지는 암호 설계를 위해 필요한 구조에 대해 확인해 보도록 한다.

WiBro 환경에서 SDR을 위한 GPU 시스템 구현 (Implementation of GPU System for SDR in WiBro Environment)

  • 안성수;이정석
    • 전자공학회논문지 IE
    • /
    • 제48권3호
    • /
    • pp.20-25
    • /
    • 2011
  • 본 논문은 와이브로 통신환경에서 SDR(Software Defined Radio) 시스템을 위한 실행속도 증진 방법을 개발하였다. 본 논문에서는 SDR 기능 구현을 위해 GPU(Graphics Processing Unit)라는 새로운 프로세서를 사용하였다. 일반적으로 통신시스템에서는 DSP(Digital Signalling Processor)나 FPGA(Field Programmable Gate Array)를 이용하여 시스템을 구현한다. 그러나 이러한 프로세서는 장단점이 커서 구현 및 디버깅을 하기 어렵다. GPU는 다수의 프로세서로 구성되어 있어 벡터 처리에 적합하며, 각 프로세서는 thread의 셋으로 구성이 되어 있다. 본 논문에서는 GPU만의 자원뿐만 아니라 CPU 자원 까지 사용하기 위한 Framework 또한 구현하였다. 다양한 실험결과, 본 제안 시스템이 와이브로 환경에서 우수한 성능을 제공함을 확인할 수 있었다.

CUDA GPGPU 상에서 경량 블록 암호 PIPO의 최적 구현 (Optimal Implementation of Lightweight Block Cipher PIPO on CUDA GPGPU)

  • 김현준;엄시우;서화정
    • 정보보호학회논문지
    • /
    • 제32권6호
    • /
    • pp.1035-1043
    • /
    • 2022
  • 사물인터넷(IoT), 클라우드 컴퓨팅, 빅데이터 등의 확산으로 애플리케이션에 대한 고속 암호화의 필요성이 대두되고 있다. GPU 최적화는 GPU가 이론적으로 얻은 암호 분석 결과 또는 축소된 버전을 합리적인 시간에 검증하는데 사용될 수 있다. 본 논문에서는 다양한 환경에서 구현되고 있는 PIPO 경량암호를 대상으로 GPU 상에서 구현하였다. PIPO에 대한 무차별 대입 공격을 고려하여 최적 구현하였다. 특히 비트 슬라이싱 기법을 적용한 최적화 구현과 GPU 요소를 최대한 사용하였다. 결과적으로 제안 기법의 구현은 RTX 3060 환경에서 초당 약 195억의 처리량을 보여 이전 연구 보다 약 122배 높은 처리량을 달성하였다.

GP-GPU 개발을 위한 3차원 그래픽 시뮬레이터 구현 (Implementation of a 3D Graphics Simulator for GP-GPU)

  • 여동영;김우영;정형기;이광엽
    • 한국정보통신학회:학술대회논문집
    • /
    • 한국해양정보통신학회 2009년도 추계학술대회
    • /
    • pp.337-340
    • /
    • 2009
  • 3차원 그래픽 처리를 위한 가속기 하드웨어가 발표된 이후 GPU(Graphics Processing Unit)의 성능은 끊임없이 개선되어 왔다. 이는 복잡한 그래픽 어플리케이션의 연산을 효율적으로 처리하기 위한 추세이나 실제로 GPU의 리소스를 100% 활용하는 경우는 드물다. 최근 주목받고 있는 GP-GPU(General-Purpose GPU)는 GPU에서 담당하는 연산을 포함하고 CPU가 처리하는 일반적인 연산의 처리도 가능하여 프로세서 자원의 분배에 따라 효율적인 제어가 가능하다. 본 논문에서는 GP-GPU 기반 환경을 가상으로 구현하여 프로그램의 설계 및 디버깅이 가능한 시뮬레이터를 구현하였다. 이를 통해 동시 설계(Co-Design) 환경을 구성하여 동시적 개발 환경을 지원하고 3차원 그래픽 컨텐츠의 디스플레이가 가능한 인터페이스를 구축하여 빠르고 안정적인 검증이 가능하다.

  • PDF

다층 신경망 구현에서의 GPU 사용 (GPU for Multi-Layer Perceptron)

  • 정기철;오경수
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2004년도 봄 학술발표논문집 Vol.31 No.1 (B)
    • /
    • pp.736-738
    • /
    • 2004
  • 신경망의 테스트 단계를 실시간으로 처리하기 위해 많은 노력이 있었다 본 논문은 일반적인 그래픽스 하드웨어를 이용하여 더욱 빠른 신경망을 구현하고, 구현된 시스템을 영상 처리 분야에 적용함으로써 효용성을 검증한다. GPU는 CPU보다 병렬연산에 효과적이다. GPU의 병렬성을 효율적으로 사용하기 위하여, 다수의 신경망 입력벡터와 웨이트벡터를 모아서 많은 내적연산을 하나의 행렬곱 연산으로 대체하였고, 시그모이드와 바이어스 항 덧셈 연산도 픽셀세이더로 병렬 구현하였다. ATI RADEON 9800 XT 보드를 이용하여 구현된 신경망 시스템은 CPU를 사용한 기존의 시스템과 비교하여 정악도의 차이 없이 30배 정도의 속도 향상을 얻을 수 있었다.

  • PDF

NVIDIA CUDA PTX를 활용한 SPECK, SIMON, SIMECK 병렬 구현 (Parallel Implementation of SPECK, SIMON and SIMECK by Using NVIDIA CUDA PTX)

  • 장경배;김현준;임세진;서화정
    • 정보보호학회논문지
    • /
    • 제31권3호
    • /
    • pp.423-431
    • /
    • 2021
  • SPECK과 SIMON은 NSA(National Security Agency)에서 개발한 경량블록암호이며 SIMECK은 SPECK과 SIMON의 장점을 결합하여 만든 새로운 경량블록암호이다. 본 논문에서는 SPECK, SIMON, SIMECK을 사용한 대용량 암호화를 구현 하는데 있어 병렬 처리에 용이한 GPU를 활용하였다. NVIDIA에서 제공하는 CUDA 라이브러리를 활용하였으며 불필요한 연산들을 제거하기 위해 CUDA 어셈블리 언어 PTX를 사용하여 성능을 극대화 하였다. 단순 CPU 구현과 GPU를 활용한 구현 결과를 비교해보았을 때, 더 빠른 속도로 대용량 암호화를 수행할 수 있었다. 또한 GPU 구현 시, C언어를 사용한 구현과 PTX를 사용한 구현을 비교해 보았을 때, PTX 사용 시, 성능이 더욱 증가하는 것을 확인하였다.

CUDA와 OPenMP를 이용한 빠르고 효율적인 신경망 구현 (Fast and Efficient Implementation of Neural Networks using CUDA and OpenMP)

  • 박안진;장홍훈;정기철
    • 한국정보과학회논문지:소프트웨어및응용
    • /
    • 제36권4호
    • /
    • pp.253-260
    • /
    • 2009
  • 컴퓨터 비전이나 패턴 인식 분야에서 이용되고 있는 많은 알고리즘들이 최근 빠른 수행시간을 위해 GPU에서 구현되고 있지만, GPU를 이용하여 알고리즘을 구현할 경우 크게 두 가지 문제점을 고려해야 한다. 첫째, 컴퓨터 그래픽스 분야의 지식이 필요한 쉐이딩(shading) 언어를 알아야 한다. 둘째, GPU를 효율적으로 활용하기 위해 CPU와 GPU간의 데이터 교환을 최소화해야 한다. 이를 위해 CPU는 GPU에서 처리할 수 있는 최대 용량의 데이터를 생성하여 GPU에 전송해야 하기 때문에 CPU에서 많은 처리시간을 소모하며, 이로 인해 CPU와 GPU 사이에 많은 오버헤드가 발생한다. 본 논문에서는 그래픽 하드웨어와 멀티코어(multi-core) CPU를 이용한 빠르고 효율적인 신경망 구현 방법을 제안한다. 기존 GPU의 첫 번째 문제점을 해결하기 위해 제안된 방법은 복잡한 쉐이팅 언어 대신 그래픽스적인 기본지식 없이도 GPU를 이용하여 응용프로그램 개발이 가능한 CUDA를 이용하였다. 두 번째 문제점을 해결하기 위해 멀티코어 CPU에서 공유 메모리 환경의 병렬화를 수행할 수 있는 OpenMP를 이용하였으며, 이의 처리시간을 줄여 CPU와 GPU 환경에서 오버 헤드를 최소화할 수 있다. 실험에서 제안된 CUDA와 OpenMP기반의 구현 방법을 신경망을 이용한 문자영역 검출 알고리즘에 적용하였으며, CPU에서의 수행시간과 비교하여 약 15배, GPU만을 이용한 수행시간과 비교하여 약 4배정도 빠른 수행시간을 보였다.

GPU를 이용한 신경망 구현 (Implementation of Neural Networks using GPU)

  • 오경수;정기철
    • 정보처리학회논문지B
    • /
    • 제11B권6호
    • /
    • pp.735-742
    • /
    • 2004
  • 본 논문은 일반적인 그래픽스 하드웨어를 이용하여 더욱 빠른 신경망을 구현하고, 구현된 시스템을 영상 처리 분야에 적용함으로써 효용성을 검증한다. GPU의 병렬성을 효율적으로 사용하기 위하여, 다수의 입력벡터와 연결가중치벡터를 모아서 많은 내적연산을 하나의 행렬곱 연산으로 대체하였고, 시그모이드와 바이어스 항 덧셈 연산도 GPV 상에서 픽셀세이더로 구현하였다. ATI RADEON 9800 XT 보드를 이용하여 구현된 신경망 시스템은 CPU를 사용한 기존의 시스템과 비교하여 정확도의 차이 없이 30배 정도의 속도 향상을 얻을 수 있었다.

GPU용 연산 라이브러리 CUDA를 이용한 블록암호 고속 구현 (High-Speed Implementations of Block Ciphers on Graphics Processing Units Using CUDA Library)

  • 염용진;조용국
    • 정보보호학회논문지
    • /
    • 제18권3호
    • /
    • pp.23-32
    • /
    • 2008
  • 그래픽 프로세서(GPU)의 연산 능력은 이미 CPU를 능가하고 있으며, 그 격차는 점점 벌어지고 있다. 따라서, 범용 계산에 그래픽 프로세서를 활용하는 GPGPU 연구가 활발히 전개되고 있으며, 병렬 처리가 필요한 분야에서 특히 두드러진 성과를 보이고 있다. GPU를 이용한 암호 알고리즘의 구현은 2005년 Cook 등에 의하여 처음 시도되었으며, OpenGL, DirectX 등의 라이브러리를 이용하여 개선된 결과들이 속속 발표되고 있다. 본 논문에서는 2007년 발표된 NVIDIA의 CUDA 라이브러리를 이용한 블록암호 구현 기법과 그 결과를 소개하고자한다. 또한, 소프트웨어로 구현된 블록암호 소스를 GPU 프로그램으로 이식하는 일반적인 방법을 제공하고자 한다. 8800GTX GPU에서 블록암호 AES, ARIA, DES를 구현했으며, 속도는 각각 4.5Gbps, 7.0Gbps, 2.8Gbps로 CPU보다 고속 구현이 가능하였다.

DVB-T 수신기를 위한 대규모 병렬처리 GPU 기반의 비터비 복호기 구현 (Implementation of Viterbi Decoder on Massively Parallel GPU for DVB-T Receiver)

  • 이규형;이호경;허서원
    • 전자공학회논문지
    • /
    • 제50권9호
    • /
    • pp.3-11
    • /
    • 2013
  • 최근 GPU의 대규모 병렬 연산 능력을 이용하여 통신 시스템을 구현하려는 연구가 활발히 진행되고 있다. 본 논문에서는 DVB-T에 적용된 비터비 복호기를 슬라이딩 블록 방법과 함께 GPU에 적용시켜 소프트웨어 모의실험 처리시간을 줄였다. 본 논문에서는 먼저 DTV 표준 방식의 일종인 DVB-T 시스템을 CPU로 구현하여 모의실험을 통해 한 개의 OFDM 심볼을 처리하는데 소요되는 시간을 추정한다. 그리고 슬라이딩 블록 방법을 적용한 DVB-T의 비터비 복호기를 NVIDIA사의 대용량 GPU 프로세서를 이용하여 소프트웨어로 구현한다. 본 논문은 GPU 소프트웨어의 최적화를 위해 CPU와 GPU 간의 데이터 전송에 소요되는 오버헤드를 줄이는 스트림 처리 기법, 전역 메모리 전송 시간을 단축하기 위한 결합 전송 기법 (coalescing), 공유 메모리 접근의 효율성을 높이기 위한 변수 설계 기법 등을 통해서 연산처리 속도를 대폭 향상시켰다. 그 결과 제안된 방식은 CPU 기반의 비터비 복호기보다 2K 모드에서 약 11배, 8K 모드에서 약 60배 정도 빠른 처리 능력을 보인다.