Database - 트랜잭션
Database - Transaction 사실 이전에 각 DBMS에서 트랜잭션을 어떻게 걸고 어떻게 커밋하고 어떻게 롤백하는지에 대해서는 언급한적이 있지만 실질적으로 Transaction이 무엇인지에 대해서 언급한적은 없는거 같다. 그래서 오늘은 트랜잭션이 무엇인지에 대해서 포스팅 해보려 한다. 1. 개요 트랜잭션이란 DBMS에서 구동되는 명령어들...
Database - Transaction 사실 이전에 각 DBMS에서 트랜잭션을 어떻게 걸고 어떻게 커밋하고 어떻게 롤백하는지에 대해서는 언급한적이 있지만 실질적으로 Transaction이 무엇인지에 대해서 언급한적은 없는거 같다. 그래서 오늘은 트랜잭션이 무엇인지에 대해서 포스팅 해보려 한다. 1. 개요 트랜잭션이란 DBMS에서 구동되는 명령어들...
텐서 코어(Tensor Core) 1. 개요 행렬연산에 특화되어있는 Nvidia에서 만든 코어이다. 기본적으로 이 텐서 코어는 D = A * B + C 와 같은 형태의 연산에 특화되어있는 코어이다. 딥러닝 연산의 대부분이 가중치와 편향 계산인 만큼 텐서코어의 이와 같은 특성은 AI에 특화되어있다고 볼 수 있다. 2. 구조 1) 지원하는 자료형 텐...
Matrix multiplication 예제분석 2차원 행렬 곱셈에 대한 GPU를 이용한 계산이다. 처음 2개의 함수는 HOST 즉 CPU를 이용한 함수이고, 뒤에 gpu~ 함수들은 모두 CUDA 코어를 사용한 함수이며 Tensor 코어를 사용한 계산은 이후에 포스팅할 예정이다. 1. hostmult0 예제 분석 int hostmult0(float...
Global Memory Coalescing 예제분석 1. 개요 아래의 예제는 행렬 A,B,C가 있을때 A의 i번째 값 제곱 더하기 B의 i번째 값 제곱 더하기 1을 해서 C의 i번째 값으로 나누는 연산이다. 어떻게 구현하는지에 따라 속도가 달라지며, 이는 Global Memory에 어떻게 엑세스하고 어떻게 캐싱되는지에 대한 내용이다. 오늘은 CPU로...
Vector DB - Quantization 사실 이걸 여기 넣어도 될까 싶은데, 그냥 데이터 Store전에 Pre-Processing이라고 한다면 이것도 Vector DB에서 논할거리가 될 것도 같고, 무엇보다 Code book의 경우 Quantization을 거친 데이터를 쓰기 때문에 여기 포함했다. 1. 개요 찾아보니 양자화(Quantizati...
병렬 처리 - Cache coherence 1. 개요 UMA든, NUMA든 각 프로세스나 코어는 캐시를 가진다. UMA인지 NUMA인지를 구분하는게 메모리이기 때문이다. 이 경우 매우 일이 복잡해지는데 각 코어나 프로세스가 가지는 캐시 값을 동기화해주어야하기 때문이다. 이를 Cache coherence라고 하며 이를 위한 여러가지 방법들이 있다....
병렬 처리 1. 개요 요즘이야 GPU를 통한 병렬 처리가 엄청 대중화되어있는 시기이지만, 여기서 이야기하는 병렬 처리는 다수의 CPU가 있는 Multi-processors를 말하는 것이다. 이 Multi-processors라는 것은 한 개의 CPU안에 여러개의 코어가 있는 상황일 수도 있고, 혹은 다수의 CPU가 연결되어있는 상황을 말하는 것 일수...
Veusz 1. 개요 논문 쓸때는 깔끔한 그래프는 필수이다. python이나 excel 그래프는 좀 애매하게 나올때가 있는데, 이럴때 필요한게 Veusz라는 프로그램이다. 이 프로그램은 windows와 macOS, linux 모두에서 돌아간다. PDF, Postscript, SVG, EMF를 포함한 벡터 및 비트맵 출력을 지원하며 텍스트, CSV,...
Ribbon Paper 1. 개요 슈퍼컴퓨터 21년도에 올라온 논문이다. 논문 풀네임은 “Ribbon: Cost-Effective and QoS-Aware Deep Learning Model Inference using a Diverse Pool of Cloud Computing Instances”이다. 직역하자면 “다양한 클라우드 컴퓨팅 인스턴스 ...
DiskANN 1. 개요 DiskANN은 그래프 기반의 대규모 근사 최근접 이웃 탐색 시 스템으로, 64 GB 메모리와 저렴한 SSD만으로 수십억 개의 벡터 를 색인 및 검색할 수 있도록 설계되었다. 이는 전통적인 메모리 기반 근사 최근접 이웃 탐색방식이 요구하는 대용량의 RAM 용량 한계를 피하면서도, 높은 재현율과 낮은 탐색 지연을 균형있게 제공...