본문 바로가기

분류 전체보기68

[Parallel Computing] (3) Application - AI/LLM 이번 글에서는 Parallel Computing을 수행할 Application에 대해서 알아보려고 한다. Parallel Computing의 중요성이 대두되는 이유는 인공지능(AI)의 발전과 밀접하게 연관되어 있다. 인공지능은 지능을 가지는 컴퓨터를 만드는 과학과 공학를 이야기하며, 즉 소프트웨어 및 하드웨어에서 인간 수준의 지능을 보유한 개체를 만드는 것이라 할 수 있다. 인간 수준의 지능은 인간이 추론하고 생각할 수 있는 높은 수준의 인지 능력에 초점을 맞추는 것을 의미한다. 그런데 아직까지는 인간 수준의 지능을 가지는 컴퓨터를 만들기는 어렵다. 현재 AI 기술이라고 하면 기계학습(Machine Learning)에 가깝다. 기계 학습은 AI의 하위 분야로써 컴퓨터를 새로 프로그래밍하지 않고도 학습할 .. 2024. 4. 13.
[Parallel Computing] (2-2) Parallel Processing이란 무엇일까? 앞 글에서는 관련 키워드에 대해서 알아보았다. 이번 글에서는 Parallel processing의 효과 및 이를 측정하는 방법에 대해서 알아보려고 한다. Parallel Processing의 궁극적인 목적은 빠르게 수행하는 것이다. 얼마나 빠르 게 수행되었는 지를 어떤 테스크를 순차적으로 수행했을 때와 동시에 수행했을 때를 비교하여 알 수 있다. 예를 들어, 'A'라는 일을 순차적으로 실행했을 때 걸리는 시간 10초였고, 동시에 수행했을 때 걸리는 시간이 5초였다면, 순차 실행 대비 동시 수행은 2(=10/5)배의 성능을 보인다고 이야기 할 수 있다. 그리고 수행하는 주체는 프로세서라고 한다면, 프로세서 개수에 따른 성능 향상을 알 수 있으며, 더 나아가 몇 개의 프로세서를 사용했을 때 가장 효율적인지도.. 2024. 4. 12.
[Parallel Computing] (2-1) Parallel Processing이란 무엇일까? 앞 글에서는 Supercomputer가 어떤 것인지 간략하게 살펴 보았고, 왜 Parallel Proceesing을 수행하는 방향으로 발전되어 왔는 지 기술하였다. 이번 글에서는 Parallel Processing과 관련된 키워드에 대해서 알아보려고 한다. Parallel Processing은 일반적으로 Parallel computing이라고 알려져 있고, 여러 개의 서로 연결된 프로세서들을 동시에 이용하여, 하나의 계산 문제를 해결한다. 여기서 중요한 점은 하나의 계산 문제를 해결한다는 것이다. 이와 달리 Multiprocessing은 두 개 혹은 그 이상의 문제를 동시에 하나 이상의 프로세서를 가지는 하나의 컴퓨터 시스텀에서 동시에 수행한다. Distributed Processing은 distribu.. 2024. 4. 12.
[Parallel Computing] (1) Supercomputer이란 무엇일까? 여러 형태로 슈퍼 컴퓨터를 정의할 수 있으나, 필자는 아래와 같은 내용으로 정의한 문장이 가장 슈퍼 컴퓨터에 가깝다고 생각한다. '현재 사용가능한 가장 빠른 컴퓨터 시스템과 같은 클래스에 속해 있는 컴퓨터 시스템이라고 말할 수 있다.' 여기서 빠르다는 의미는 특정 테스크를 단 시간 내에 수행한다는 것을 의미한다. 그리고 같은 클래스는 일반적으로 500개의 가장 빠른 컴퓨터들을 발표하는 Top500에 포함되어 있는 것을 의미한다. Top500에 속해있는 컴퓨터들은 'https://www.top500.org'에서 확인해볼 수 있다. Top500은 1993년도부터 List up을 하기 시작하였고, 목록 업데이트는 일 년에 두 번 수행한다. 퍼포먼스는 'LINPACK' 벤치마크를 수행하여 측정한다. 간단하게 말.. 2024. 4. 12.