Monthly Archives: January 2019

[GPU] Forward Rendering vs. Deferred Rendering

예전에 FlexRendering에서 Deferred Rendering에 대해 작성한 적이 있다. FlexRendering에서 사용하는 Deferred Rendering은 Tile-based Rendering을 의미하는 것 같다. 하지만, 보통 Graphic 연산에서 Deferred Rendering은 다른 의미로 더 많이 사용되는 것 같다. 이 글에서 Forward Rendering과 Deferring Rendering에 대해서 작성하였다. 이 글은 출처 1의 내용을 기반으로 작성하였다. Forward Rendering Forward Rendering은 OpenGL등을 처음 배우게 되면 사용하는 Graphic… Read More »

[Python] 주식 종목 코드 및 가격 로딩 (Loading Stock Price and Code Number using Requests Module)

목적 네이버와 한국증권금융 홈페이지에서 주식 종목 코드 및 주식 종목 가격 읽기 Request 모듈 사용 방법을 알고 싶어서 만들어본 예제 코드 환경: Ubuntu 16.04 + Python3 Prerequisite Module(s): reqeusts, bs4, BeautifulSoup

설명 reqeusts.get() + reqeusts().post() 함수를 사용하면 웹사이트의 HTML을 로딩할 수 있음. POST에 해당하는 Data 값을 찾는 방법은 출처 2에 설명되어 있음. BeautifulSoup를 사용하면… Read More »

[Python] Gmail SMTP 서버 사용해서 이메일 보내기 (Sending Email using Gamil ID)

목적: Gmail SMTP 서버를 사용하여 이메일 발송하기 환경: Ubuntu 16.04 + Python 3 Prerequisite Module(s): smtplib

설명 출처 1에서 나온 내용을 대부분 그대로 사용하였다. “””STRING”””:  STRING에 새로운 줄 바꿈 등을 모두 포함한다. 보통 “\n”과 같은 부분을 추가해야 줄 바꿈이 적용되지만 “”” (3개)를 사용하면 필요하지 않다. STR.join(LIST): LIST 사이에 STR을 추가하여 새로운 String을 생성한다. 만약 LIST를 STRING으로… Read More »

[GPGPU Series 7] Warp Execution

지난 글에서 Thread Block (TB)에서 Warp를 생성하는 방법에 관해서 설명하였다. 이번 글에서는 Warp가 실행되는 방법(?)에 대한 설명이다. Warp는 GPU Instruction을 실행하는 가장 기본 단위이다. Warp의 모든 Thread는 하나의 같은 Instruction을 실행한다. 하지만, Warp의 각 Thread는 서로 다른 Data 값을 읽을 수 있다. 결과적으로 Warp의 각 Thread는 같은 Instruction을 다른 Data 값을 사용하여 연산을 수행한다고 생각하면… Read More »