[LTE/NR] Abbreviation + Terminology

어쩌다 보니 LTE/NR 통신에 대해서 공부를 하게 되었다. 대학교에서도 통신 수업을 들어본 적이 없고, 태어나서 한 번도 통신 분야 공부를 해본 경험이 없다. 컴퓨터 구조, 그래픽 등의 분야에서도 Abbreviation (줄임말)을 많이 사용하지만, 통신 분야는 특히 Abbreviation을 훨씬 많이 사용하는 것 같습니다. 물론 몰라서 더 많이 사용하는 것처럼 느낄 수도 있지만… 정말 Abbreviation이 많은 것 같습니다.… Read More »

[SSE/AVX Vectorization] 01-Index & Overview

목차: [Series 01] Index & Overview (Link) 다음 글: [Series 02] TBD (Link) 목차 (Index) [Series 01] Index & Overview (Link) [Series 02] TBD (Link) Purpose & Objective? CUDA를 사용해서 GPU 병렬화 프로그래밍을 작성해본 적이 있다. CPU 역시 GPU와 비슷하게 SIMD 연산(SSE/AVX/AVX2/AVX-512)을 지원한다. 개인적으로 AVX에 대해서 찾아보던 중 정리가 잘 된 글이 있어서 정리하게 되었다.… Read More »

[Vulkan Tutorial] 16-The End of Graphics Pipeline

목차: 01-Overview (Link)이전 글: 15-Render Passes (Link)다음 글: 17-TBD (Link) Graphics Pipeline의 마지막 설명을 작성한다. 이번 글에서는 앞에서 작성한 모든 부분을 하나로 합쳐서 Graphics Pipeline을 생성한다. 앞장에서 Graphics Pipeline을 생성하기 위해서 아래의 4가지 Structure 또는 Object를 생성하였다. Shader Stages: Programmable Stages (Vertex/Fragment Shaders) 코드를 생성하였다 (Vulkan Tutorial 13) Fixed Function States: 모든 Fixed Function 동작을 위한 코드를 생성하였다… Read More »

[Vulkan Tutorial] 15-Render Passes

목차: 01-Overview (Link)이전 글: 14-Fixed Functions on Graphics Pipeline (Link)다음 글: 16-The End of Graphics Pipeline (Link) Graphics Pipeline을 생성하기 이전에 Rendering에 사용될 Framebuffer Attachment (여러 개의 Framebuffer을 의미하는 것 같음)를 정의해야 한다. 예를 들어서 몇 개의 Color Buffer, Depth Buffer를 사용할 예정인지, Rendering을 하는 동안 해당 Buffer의 값은 어떻게 사용될 것인지 등을 정의하는 것을 의미한다. 이러한 모든… Read More »

[Python] Google Sheets 읽기

실험 환경 OS: Ubuntu Linux 18.04 Python Version: 3.7 gspread, oauth2client 설치 필요 $pip install gspread oauth2client 인증 과정 먼저 API를 사용하기 위해서 구글 개발자 콘솔에 접속해서 몇 가지 설정을 진행해야 한다. 아래 사이트에 접속한 다음에 그림에 따라서 인증 과정을 진행하면 된다. Web: https://console.developers.google.com/ 그림 2 Step 3의 Project Name은 원하는 이름을 선택하면 된다. 그림… Read More »

[Vulkan Tutorial] 14-Fixed Functions on Graphics Pipeline

목차: 01-Overview (Link)이전 글: 13-Shader Modules on Graphics Pipeline (Link)다음 글: 15-Render Passes (Link) 기존의 Graphics APIs(OpenGL 등)는 Graphics Pipeline 중 Fixed Functions 부분에 해당하는 Step에 Default Setting을 제공한다. 결과적으로 특별한 설정을 해주지 않아도 Vertex Shader, Fragment Shader 만 작성하면 Graphics Pipeline을 사용할 수 있다는 의미이다. 하지만, Vulkan API의 경우 Fixed Function의 Default Setting이란 것이… Read More »

[Vulkan Tutorial] 13-Shader Modules on Graphics Pipeline

목차: 01-Overview (Link)이전 글: 12-Introduction of Graphics Pipeline (Link)다음 글: 14-Fixed Functions on Graphics Pipeline (Link) SPIR-V (Bytecode Format) and GLSL/HLSL (Human-Readable Format) 기존 Graphics API는 Shader 코드를 Human-Readable Syntax 형태의 GLSL, HLSL로 작성하였다. Vulkan의 경우 기존 Graphics API와 달리 Bytecode Format 형태의 SPIR-V 코드로 작성해야 한다. Vulkan은 Graphics Shader 코드와 Compute Shader 코드 모두 같은… Read More »

[Vulkan Tutorial] 12-Introduction of Graphics Pipeline

목차: 01-Overview (Link)이전 글: 11-Create Image Views (Link)다음 글: 13-Shader Modules on Graphics Pipeline (Link) 이번 장을 시작으로 몇 차례에 걸쳐서 Graphics Pipeline 설명과 Graphics Pipeline을 생성하는 코드에 대해서 작성할 예정이다. 먼저 Graphics Pipeline에 대한 설명을 작성하였다. 예전에 출처 1을 기준으로 Graphics Pipeline에 대한 글을 작성한 적이 있다 (출처 2). 이번 글을 출처 2의 내용과 거의 동일하다. … Read More »

[Vulkan Tutorial] 11-Create Image Views

목차: 01-Overview (Link)이전 글: 10-Create Swap Chain (Link)다음 글: 12-Introduction of Graphics Pipeline (Link) 앞 장에서 Swap Chain을 생성하는 방법을 정리하였다. Swap Chain을 생성하면 Image (VkImage)가 생성된다. 해당 Image (VkImage)를 사용하기 위해서 Image View (VkImageView)를 생성해야 한다. 출처 1에서 Image View (VkImageView)에 대한 설명이 다소 어려워서 다른 설명을 찾아보았다. 개인적으로 출처 2에서 제공하는 Image View (VkImageView)에 대한 설명이… Read More »

[Vulkan Tutorial] 10-Create Swap Chain

목차: 01-Overview (Link)이전 글: 09-Create Logical Device (Link)다음 글: 11-Create Image Views (Link) What is Swap Chain? 이번 장에서는 Swap Chain을 생성할 차례이다. 이전에 Swap Chain에 대해서 정리한 적이 있다 (출처 2). Vulkan Tutorial에서 설명하는 Swap Chain에 대해서 추가로 정리해보았다. 결과적으로 출처 2에 작성한 내용과 큰(?) 차이는 없으나, 조금 더 상세하게 설명을 작성하였다. 내용은 출처 1, 3, 4… Read More »