본문 바로가기

IT/Basic

(43)
그래픽 카드 윈도우10 그래픽 카드 확인하는 방법 윈도우10 그래픽 카드 확인하는 방법 환경: windows 10 보통 새로 나온 게임을 설치하기 전에 내 컴퓨터의 사양을 체크합니다. 게임에서는 컴퓨터 장치 중 그래픽 카드가 중요한 하드웨어 중 하나이 mainia.tistory.com [용어설명] GPU의 원리 & 그래픽카드 스펙 보는 법 그래픽 카드란 무엇인가?라고 물어본다면, 당연히 "컴퓨터의 그래픽을 처리하는 장치"라는 원론... blog.naver.com
SDK, API, IDE API Application Programming Interface 의 약자이다. API는 프로그램의 기능을 다른 프로그램이 쓸 수 있게 하는 것이 목적입니다. 운영체제가 응용프로그램을 위해 제공하는 함수의 집합으로 응용프로그램과 디바이스를 연결해주는 역할을 한다. API는 특정 시스템을 프로그래밍 하기위한 함수의 집합을 이르는 일반 명사이며 그중의 하나가 윈도우즈 API나 요즘은 일반적으로 API라고 하면 윈도우즈 API를 말하는 경우가 많다.그래서 통상 API를 공부 한다라고하면 이는 윈도우즈 API를 말하는데.. 윈도우 os가 그만큼 대중화되었다는 것이겟지? 운영체제는 하드웨어와 응용프로그램 사이에 위치하며 응용 프로그램을 대신하여 하드웨어와 메모리를 관리하는 시스템 소프트웨어이다. 16비트운영체제..
빌드 속 컴파일 1. 컴파일(Compile) 컴파일이란 개발자가 작성한 소스코드를 바이너리 코드로 변환하는 과정을 말한다. (목적파일이 생성됨) 즉, 컴퓨터가 이해할 수 있는 기계어로 변환하는 작업이다. 이러한 작업을 해주는 프로그램을 가르켜 컴파일러(Compiler)라 한다. 자바의 경우, 자바가상머신(JVM)에서 실행가능한 바이트코드 형태의 클래스파일이 생성이 된다. 2. 링크(link) 프로젝트를 진행하다 보면 소스파일이 여러개가 생성이되고 A라는 소스파일에서 B라는 소스파일에 존재하는 함수(메서드)를 호출하는 경우가 있다. 이때 A와 B 소스파일 각각을 컴파일만 하면 A가 B에 존재하는 함수를 찾질 못하기 때문에 호출할 수가 없다. 따라서 A와 B를 연결해주는 작업이 필요한데 이 작업을 링크라고 한다. 여러개로 ..
x86 x86 또는 80x86은 인텔이 개발한 마이크로프로세서 계열을 부르는 말이자, 이들과 호환되는 프로세서들에서 사용한 명령어 집합 구조들을 통칭하는 말이다. x86 아키텍처는 데스크톱 컴퓨터 시장에서 매우 널리 쓰이며, PowerPC 같이 좀 더 근대적인 아키텍처를 사용한 프로세서들이 x86과 경쟁했으나 그다지 많은 시장 점유율을 확보하지는 못했다. x86-64는 x86 명령어 집합 아키텍처의 64비트 모임이다. x86-64 또는 x64의 이름을 일상적으로 사용하기에 이르렀다. SIMD 명령 집합 80486 이후 x86 아키텍처에는 멀티미디어 처리를 위한 SIMD 명령 집합과 이를 위한 레지스터들이 추가되었다. 이 중 처음으로 도입된 것은 펜티엄 MMX에서 소개된 MMX로, 부동소수점 레지스터와 공유되는 ..
col, row Major [BLAS] Matrix Multiplication Library BLAS는 Basic Linear Algebra SubPrograms의 약자로써 기초 선형대수(행렬곱) 에 대한 표준(거의 표준) 규격 안이다. 이러한 BLAS의 종류로는 기업용으로는 AMD ACML , Intel MKL , IBM ESSL , Nvidia CUBLAS , Apple Accelearate spring.ghost.io
single floating point
[Basic] avx 1. avx실행가능 확인 AVX (Advanced Vector eXtensions) 란? AVX는 Advanced Vector eXtensions의 약자로 2008년 4월 인텔 개발자 포럼에서 x86 SIMD Instruction Set로 SSE Instruction Set series의 후속작이다. 2011년에 출시된 Intel SandyBridge microarchitecture 부.. corona-world.tistory.com How to tell if a Linux machine supports AVX/AVX2 instructions? I'm on SUSE Linux Enterprise 10/11 machines. I launch my regressions to a farm of machines..
load, store 명령어 / 메모리 계층 메모리 계층(Memory Hierarchy) 메모리 종류 : 1. 메인(Main) 메모리 : 램(RAM) (D램) 2. 레지스터(Register) : CPU 안에 내장되어 있어서 연산을 위한 저장소 제공 3. 캐쉬(Cache) : S램. CPU와 램사이에서 중간 저장소 역할 4. 하드디스크(H.. dakuo.tistory.com 메모리 종류 : 1. 메인(Main) 메모리 : 램(RAM) (D램) 2. 레지스터(Register) : CPU 안에 내장되어 있어서 연산을 위한 저장소 제공 3. 캐쉬(Cache) : S램. CPU와 램사이에서 중간 저장소 역할 4. 하드디스크(Hard Disk)와 이외 장치 : 하드 디스크, I/O 장치 등등 메모리들은 프로그램이 실행하는 동안 데이터의 입력 및 출력을 담당한..
비트 연산
cmake란? CMake 란 CMake는 다양한 빌드(Build) 도구 중 하나 이다. - Build 도구 없이 IDE를 통해 빌드하고 배포할 때 발생하는 가장 큰 재앙은 운영환경에 배포되는 version이 개발자의 PC 에 의해 결정된다는 것 --> 다양한 운영체제에서 문제없이 빌드하기 위해 필요함. cmake의 gui는 명료하다. 상단에 Source file이 들어있는 src 폴더를 지정하고, Build 할 경로폴더를 지정한 뒤, 하단의 Generate을 하면 1차 생성, 그리고 Configure 을 하면 완료된다. Generate 할 때, VS version을 맞춰서 설정해야 하고, Open project를 해서 Visual studio에서 최종 빌드를 한다. - Github의 source code를 빌드하기 위..
cache 캐시[Cache]란? 프로그램이 수행될 때 나타나는 지역성을 이용하여 메모리나 디스크에서 사용되었던 내용을 특별히 빠르게 접근할 수 있는 곳에 보관하고 관리함으로써 이 내용을 다시 필요로할 때 보다 빠르게 참조하도록 하는 것이다. 쉽게 풀어서 설명하면 사용되었던 데이터는 다시 사용되어 질 가능성이 높다는 개념을 이용한 것이다. 이를 통해서 다시 사용될 확률이 높은 아이들을 좀 더 빠르게 접근 가능한 저장소를 사용한다는 개념이다. 캐시(cache, 문화어: 캐쉬, 고속완충기, 고속완충기억기)는 컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 캐시의 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우나 값을 다시 계산하는 시간을 절약하고 싶은 경우에 사용한다. 캐..
객체 지향 프로그래밍 객체 지향 프로그래밍(OOP)이 뭐에요? 객체 지향 프로그래밍은 컴퓨터 프로그래밍 패러다임중 하나로, 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다. => 결국 객체 지향 키워드 5가지와 관련된 내용과 장단점을 알고 있는지에 대한 질문 객체 지향 프로그래밍의 장, 단점 간단하게 설명해주세요 - 장점 ▶코드 재사용이 용이 남이 만든 클래스를 가져와서 이용할 수 있고 상속을 통해 확장해서 사용할 수 있음. ▶유지보수가 쉬움 절차 지향 프로그래밍에서는 코드를 수정해야할 때 일일이 찾아 수정해야하는 반면 객체 지향 프로그래밍에서는 수정해야 할 부분이 클래스 내부에 멤버 변수혹은 메서드로 있기 때문에 해당 부..
context switching 멀티프로세스 환경에서 CPU가 어떤 하나의 프로세스를 실행하고 있는 상태에서 인터럽트 요청에 의해 다음 우선 순위의 프로세스가 실행되어야 할 때 기존의 프로세스의 상태 또는 레지스터 값(Context)을 저장하고 CPU가 다음 프로세스를 수행하도록 새로운 프로세스의 상태 또는 레지스터 값(Context)를 교체하는 작업을 Context Switch(Context Switching)라고 한다. Context는 무엇인가? 사용자와 다른 사용자, 사용자와 시스템 또는 디바이스간의 상호작용에 영향을 미치는 사람, 장소, 개체등의 현재 상황(상태)을 규정하는 정보들을 말한다. android나 servlet등에서도 context가 있지만 OS에서 Context는 CPU가 해당 프로세스를 실행하기 위한 해당 프로세스..