loading...
멀티코어 및 멀티프로세서 시스템을 사용하면서 생기는 여러가지 동기화 문제들을 알아보고 이에 대한 해결책을 배운다. 우선 기본적인 개념들과 이론적인 배경을 먼저 배우고 그 기반 위에서 실제 사용되는 하드웨어 위에서 어떤 알고리즘들을 통해서 이런 문제를 해결하여야 하는지에 대한 실제적인 지식을 배우고 실습해본다.
Programming many-core chips
Second Euromicro Symposium on Microprocessing and Microprogramming, Oct. 12-14, 1976, Venice
컴퓨터 밑바닥의 비밀 : 컴퓨터 시스템의 본질을 알면 코드의 실마리가 보인다
Parallel processing for computer graphics
Intel Xeon Phi coprocessor high-performance programming
메카트로닉스
Practical operating systems
Parallel computer organization and design
마이크로 콘트롤러 8051
Advanced multicore systems-on-chip : architecture, on-chip network, design
(성능을 100% 끌어내는) 멀티코어 애플리케이션 프로그래밍
컴퓨터 구조와 원리 2.0 : 비주얼 컴퓨터 아키텍처
Computer architecture : a quantitative approach
Introduction to parallel computing
컴퓨터 구조론 =
Multi-core programming : increasing performance through software multi-threading
Advances in Intelligent Information Hiding and Multimedia Signal Processing. proceeding of the Twelfth International Conference on Intelligent Information Hiding and Multimedia Signal Processing, Nov., 21-23, 2016, Kaohsiung, Taiwan
컴퓨터 기반 제어 프로그래밍 =
Gavrilov, V. S.; Kazennov, G. G. · 2014
Russian Microelectronics
Morrison, A. · 2016
Communications of the ACM
Meng-Huan Wu; Cheng-Yang Fu; Peng-Chih Wang; Ren-Song Tsay · 2013
ACM Transactions on Embedded Computing Systems
Markovic, N.; Nemirovsky, D.; Unsal, O.; Valero, M.; Crista, A. · 2015
IEEE Computer Architecture Letters, Computer Architecture Letters, IEEE Comput. Arch. Lett.
Amine Anane; El Mostapha Aboulhamid · 2014
International Journal of Parallel Programming
Paul, D.; Achar, R.; Nakhla, M.S.; Nakhla, N.M. · 2014
IEEE Transactions on Very Large Scale Integration (VLSI) Systems, Very Large Scale Integration (VLSI) Systems, IEEE Transactions on, IEEE Trans. VLSI Syst.
Vishkin, U. · 2014
Communications of the ACM
You, Guohua; Zhao, Ying · 2011
Energy Procedia
Rashkovits R.,Lavy I. · 2020
Journal of Information Technology Education: Innovations in Practice
Morrison, Adam · 2016
Queue - Web
Almeida, Luis · 2013
Real-Time Systems: The International Journal of Time-Critical Computing Systems
Huang, Jeff; Zhang, Chuan · 2016
Journal of Computer Science and Technology
Chang, J.; Wu, H.; Pai, H.; Tsay, R.; Mak, W. · 2015
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on, IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst.
Al Bahra, Samy · 2013
Communications of the ACM
Kana Shimada; Hiroyuki Tomiyama; Ittetsu Taniguchi; Hiroki Nishikawa · 2022
IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences
Fu, Haojie; Wang, Zan; Chen, Xiang; Fan, Xiangyu · 2018
Software Quality Journal
Kristien M.,Spink T.,Campbell B.,Sarkar S.,Stark I.,Franke B.,Bohm I.,Topham N. · 2020
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Tarawneh, G.; Yakovlev, A.; Mak, T. · 2014
IEEE Transactions on Very Large Scale Integration (VLSI) Systems, Very Large Scale Integration (VLSI) Systems, IEEE Transactions on, IEEE Trans. VLSI Syst.
Tichy, Walter · 2014
Ubiquity
Goncharenko, E.A.; Paznikov, A.A.; Tabakov, A.V. · 2019
Journal of Physics: Conference Series
전선 / 학사
멀티코어의 등장으로 인하여 모바일 기기, 데스크 탑 및 서버 컴퓨팅, 슈퍼컴퓨팅을 아우르는 소프트웨어 산업에서 큰 변화가 나타나고 있다. 이와 같은 멀티코어 하드웨어에 의한 성능 증가에 따른 이익을 얻으려면 소프트웨어가 멀티코어에 맞게 작성되어야 한다. 본 교과목은 많은 변화가 있었고 앞으로도 변화할 멀티코어 구조에 대하여 배우고 이를 위한 소프트웨어를 잘 작성하는 방법에 대한 주제를 다룬다. 다루는 주제는 다루는 주제는 모바일 기기, 데스크탑 컴퓨터, 서버, 슈퍼컴퓨터에 이용되는 멀티코어 프로세서의 구조, 메모리 계층구조, 메모리 일관성, 멀티코어 운영체제, 병렬 프로그래밍 모델, 스케쥴링, 동기화, 성능분석기법, 최적화 기법, 디버깅 기법 등이다. 특히, GPU를 포함하는 가속기 구조에 대하여 다루고 이를 이용하는 이종 컴퓨팅에 대하여 배운다.전선 / 대학원
기계학습은 환경으로부터 데이터 관찰과 경험을 통해 성능을 계속적으로 향상시킬 수 있는 문제해결 시스템을 연구하는 인공지능의 한 분야이다. 본 과목에서는 기계학습에 관한 이론 및 실제적인 연구 주제들에 관해 학습한다. 감독 학습과 무감독 학습 및 강화학습에 관한 기본 원리와 이론적인 배경을 공부하며 이들에 대한 구체적인 알고리즘을 학습한다. 기호규칙 학습, 결정트리, 메모리기반 학습, 신경망, 유전자알고리즘, 베이지안 망, 은닉 마코프 모델, 커널방법 및 기타 최근 기계학습 알고리즘을 다룬다.전선 / 학사
인터넷의 발전과 함께 이미지, 오디오, 비디오, 텍스트 등 다양한 멀티미디어 데이터의 접근성이 크게 향상되었다. 특히 지난 10년간 GPT-4와 같은 거대 멀티모달 모델(Multimodal Large Models)을 필두로 한 인공신경망 기술의 비약적인 발전은 이러한 이종 데이터 간의 통합과 상호융합을 인공지능 분야의 핵심 트렌드로 이끌고 있다. 본 교과목에서 다루는 주요 응용 분야는 이미지 및 비디오의 처리와 생성, 오디오 및 음성 신호의 처리와 생성, 그리고 자연어 처리 및 생성 기술을 포괄한다. 본 교과목은 인공지능 분야의 미디어 데이터 처리를 위한 핵심 신호 처리 및 기계학습 방법론을 학습하는 것을 목표로 한다. 구체적으로 데이터 표현(Representation), 압축(Compression), 시퀀스 모델링(Sequence Modeling), 데이터 합성(Synthesis), 그리고 멀티모달 융합(Multimodal Fusion) 등의 주제를 다룬다. 이론 강의와 프로젝트 기반 실습을 병행함으로써, 학생들은 서로 다른 유형의 데이터와 신호가 갖는 고유한 특성 및 처리 기법을 이해하고, 나아가 이들 간의 공통점과 상호 통합(Cross-modal integration) 방법론을 심도 있게 습득하게 된다. 본 교과목은 컴퓨터 비전, 자연어 처리 및 관련 교과목을 이수한 후 수강하는 심화 연계 과목으로 적합하다.전선 / 대학원
멀티스케일 가공공정의 기초지식 및 배경 이론을 학습한다. 나노스케일에서 벌크스케일까지 적용되는 다양한 가공 방법의 특징 및 원리를 파악한다. 분자/입자를 조립하는 Bottom-up 방식, 벌크물질을 식각하여 원하는 구조를 제조하는 top-down 방식 및 두 방법을 결합하는 hybrid 방법 등의 각각의 특징을 파악하고 각각의 공정을 최적화할 수 있는 방법 및 핵심 동향을 학습한다.전선 / 학사
머신러닝과 인공지능 분야가 보여주고 있는 놀라운 발전의 근간에는 자연 현상을 수학 문제로 기술한 뒤 수많은 현대 수학의 도구를 이용해서 풀어낸 수학의 틀이 존재한다. 따라서 이같은 수학의 핵심 원리를 모른 채 이미 라이브러리화된 것을 단순하게 사용하여 학습하는 것으로는 한계에 봉착할 수 있다. 본 강의의 목적은 수강생이 머신러닝을 이해하는데 있어 필요한 수학을 프로그래밍과 연계하여 학습하는데 있다. 이를 위해 본 강의는, 수학의 단위 주제 강의 후 즉시 프로그래밍 실습을 통해 익히는 마이크로러닝 방식으로 운영한다. 머신러닝 알고리즘을 직접 다루지 않으나, 대수학, 미적분학, 선형대수, 기하학과 같이 머신러닝 학습 및 강좌에 필수적으로 요구되는 내용을 다루며, 수업에서 사용하는 프로그래밍 언어는 파이썬이다. 본 강의는 이공계 고교 수학 이상의 지식을 갖추고 있으나 프로그래밍 지식을 갖추고 있지 않은 학생을 주 대상으로 한다.전선 / 학사
본 과목에서는 공학문제 해석에 널리 사용되는 컴퓨터시뮬레이션을 위한 수치해석 기법의 기본적인 개념과 프로그래밍을 학습한다. 유한차분법, 유한요소법 등과 같은 전통적인 수치해석 기법과 함께, 머신러닝을 이용한 컴퓨터시뮬레이션 데이터의 처리 및 활용방법, 그리고 물리지식기반 인공신경망 등을 이용한 머신러닝기반 컴퓨터시뮬레이션 기술을 배운다. 구조물의 정적 및 동적 거동해석을 비롯하여 유체유동과 열전달 해석 및 전자기장 해석 등 기계시스템의 거동을 이해하기 위한 문제에 적용하여 프로그래밍 및 해석을 수행한다.전선 / 대학원
CPU를 중심으로 I/O System, Memory System, Cache, Virtual Memory 등의 구조 및 설계 방법을 다루며, 이를 바탕으로 전체적인 컴퓨터의 조직을 이해한다.전선 / 대학원
본 강좌에서는 네트워크 위상, 전달 경로, 패킷 흐름의 조절, 라우터 디자인, 교착상태의 탐지 및 회피, 혼잡 제어 등 상호연결 네트워크의 구조와 설계에 관한 주제를 다룬다. 이와 함께 on-chip 네트워크, 병렬 컴퓨터, 공유 메모리의 상호연결, 데이터 센터 네트워크와 인터넷 라우터의 스위칭 조직 등 상호연결 네트워크의 이론이 활용될 수 있는 예를 살펴본다.전선 / 대학원
기계학습은 환경으로부터 데이터 관찰과 경험을 통해 성능을 계속적으로 향상시킬 수 있는 문제해결 시스템을 연구하는 인공지능의 한 분야이다. 본 과목에서는 기계학습에 관한 이론 및 실제적인 연구 주제들에 관해 학습한다. 감독 학습과 무감독 학습 및 강화학습에 관한 기본 원리와 이론적인 배경을 공부하며 이들에 대한 구체적인 알고리즘을 학습한다. 기호규칙 학습, 결정트리, 메모리기반 학습, 신경망, 유전자알고리즘, 베이지안 망, 은닉 마코프 모델, 커널방법 및 기타 최근 기계학습 알고리즘을 다룬다.전선 / 학사
본 강좌는 딥러닝 등 기계학습 기반 인공지능 및 관련 분야에 관심있는 수강생을 대상으로 하는 학부 교과목으로 인공지능 분야의 핵심이 되는 기계학습의 개념 및 응용을 소개하고, 주요 기계학습 알고리즘 및 모델들에 대해 학습한다. 과제 및 프로젝트를 통해 최신 기계학습 기법의 심층적 이해와 실제 구현 기회를 부여한다. 주요 내용으로는 학습이론, 선형모델 (선형회귀, 선형분류, Logistic 회귀), Support Vector Machine, 인공신경망, 순차모델, 기초 딥러닝 모델 (MLP, CNN, RNN), 앙상블 학습 등을 포함한다. 선수과목: 데이터구조 혹은 알고리즘, 선형대수, 확률변수, 프로그래밍 방법론전선 / 대학원
인공신경망 시스템은 인간 두뇌의 구조를 모방한 생물학적 정보처리시스템으로서 비교적 단순한 기능을 가진 다수의 연산소자들로 구성되어 있다. 이 과목에서는 신경망의 수학적 이론과 실제 응용에 관해 학습한다. 최신 신경망 모델의 다양한 구조를 살펴보며 감독학습, 무감독 학습, 강화 학습을 수행하기 위한 연결론적 또는 확률적 학습 알고리즘에 대하여 공부한다.전선 / 대학원
본 과목은 유한 차원 및 무한 차원 벡터 공간에서의 최적화를 통합적으로 다루며, 최적화와 머신러닝 사이의 상호작용에 중점을 둔다. 최적화 알고리즘은 머신러닝의 핵심 역할을 하며 (예: 주어진 데이터셋으로부터 모델을 학습시킬 때) 동시에 고차원 최적화 문제를 풀기 위해 머신러닝 모델이 최근 많이 활용되고 있다 (예: 물리 시스템의 지배 방정식을 무한 차원 최적화 문제의 해로 재구성한 다음, 머신러닝 알고리즘을 사용하여 이에 수반되는 고차원 최적화 문제를 해결하려는 시도). 본 과목에서는 머신러닝 분야에서 필요로 하는 최적화 이론 및 알고리즘과 동시에, 복잡한 최적화 문제를 풀 수 있는 머신러닝 기법들에 대해 심도있게 다룬다.전선 / 대학원
인공지능 분야에서 선택된 최신 연구 주제에 관한 논문들을 세미나 형식으로 진행한다.전선 / 대학원
스마트폰, 사물인터넷, 웨어러블, AR/VR 기기등 컨슈머 디바이스의 발전과, 클라우드/에지 컴퓨팅 등 백앤드 컴퓨팅 기술의 발전으로, 컴퓨팅 서비스의 영역이 다양한 산업 분야와 사람들 삶속으로 빠르게 확장되고 있다. 이로 인해 마크 와이저가 제안한 유비쿼터스 컴퓨팅 비전의 실현이 한층 눈앞에 다가오게 되었다. 모바일 컴퓨팅 시스템은 유비쿼터스 컴퓨팅을 실현하는 첫 단계로서, 기존의 컴퓨팅 시스템과는 매우 다른 특성을 지닌다. 많은 경우, 모바일 컴퓨팅 시스템은 물리 공간에 분산되어 사용자 및 환경을 관찰하는 이기종의 센싱 장치, 이를 처리, 분석하기 위한 다계층의 분산 추론 시스템, 추론을 기반으로 자동화된 피드백을 주기위한 엑추에이터등 복잡한 시스템 요소가 유기적으로 엮어 동작하게 된다. 또한 시스템의 높은 사용성을 위해서, 사용자와 상황의 다양성을 고려한 고도로 개인화된 적응형 서비스 인터페이스의 설계가 필수적이다. 본 과목에서는, 스마트폰, 사물인터넷, 웨어러블, AR/VR 기기를 위한 소프트웨어 시스템, 센서 데이터 분석 및 추론을 위한 분산 기계 학습 기법, 효율적 모바일 서비스 구현을 위한 분산 시스템 구조, 새로운 사용자 인터페이스 및 응용 설계 등, 성공적인 모바일 컴퓨팅 시스템의 디자인 및 개발을 위해 필요한 핵심 기술을 살펴보고, 이를 적용 발전시킬 수 있는 능력을 키우고자 한다.전선 / 대학원
본 과목에서는 나날이 복잡해 지고 있는 최첨단 시스템들의 실제 개발 비용 및 기간을 단축시키기 위하여 인더스트리에서 널리 쓰이는 복합 시스템 모델링 기법들 및 이를 이용한 시뮬레이션 방법들에 대하여 공부한다. 학생들은 시스템의 모델링 컨셉 정의, 모델링을 위한 시스템 분할, 상세 모델링 및 통합 모델링에 대하여 공부한다. 그리고 기 구축된 시스템 모델들을 이용한 다양한 분석 기법들에 대하여 여러 예제들을 사용하여 공부한다. 또한 학생들은 본 강의에서 습득한 모델링 기법들을 이용하여 제조 시스템, 교통 시스템 및 유통 공급망 시스템 등의 복잡한 시스템 모델들을 구축하고 구축된 모델들을 과학적인 분석 방법들을 통하여 개선하는 프로젝트를 수행한다.전선 / 학사
본 과정에서는 머신러닝의 기초를 수업한다. 수업 초반에는 머신러닝의 기초가 되는 확률, 선형대수, 최적화, 신호처리를 간단히 리뷰한다. 중반부에서는 대표적인 머신러닝 문제인 Classification, regression, clustering을 소개하고 예시를 통하여 개념을 학습한다. 후반부에서는 스마트 제조를 위한 센싱, 공간정보구축, 로보틱스 적용의 실습을 조별로 진행한다. 독립전원으로 구동가능한 미니PC 상에 리눅스를 운용하고, ROS SLAM 등 로보틱스와 공간지능 관련 소프트웨어를 배운다. 마지막으로는 실제 센서를 함께 구동하고 직접 데이터를 취득한 후, 수업에서 학습한 머신러닝 알고리즘을 적용해보기 위한 실습을 수행한다.전선 / 대학원
스마트폰, 사물인터넷, 웨어러블, AR/VR 기기 등 컨슈머 디바이스의 발전과, 클라우드/에지 컴퓨팅 등 백앤드 컴퓨팅 기술의 발전으로, 컴퓨팅 서비스의 영역이 다양한 산업 분야와 사람들 삶 속으로 빠르게 확장되고 있다. 이로 인해 마크 와이저가 제안한 유비쿼터스 컴퓨팅 비전의 실현이 한층 눈앞에 다가오게 되었다. 모바일 컴퓨팅 시스템은 유비쿼터스 컴퓨팅을 실현하는 첫 단계로서, 기존의 컴퓨팅 시스템과는 매우 다른 특성을 지닌다. 많은 경우, 모바일 컴퓨팅 시스템은 물리 공간에 분산되어 사용자 및 환경을 관찰하는 이기종의 센싱 장치, 이를 처리, 분석하기 위한 다계층의 분산 추론 시스템, 추론을 기반으로 자동화된 피드백을 주기 위한 엑추에이터등 복잡한 시스템 요소가 유기적으로 엮어 동작하게 된다. 또한 시스템의 높은 사용성을 위해서, 사용자와 상황의 다양성을 고려한 고도로 개인화된 적응형 서비스 인터페이스의 설계가 필수적이다. 본 과목에서는, 스마트폰, 사물인터넷, 웨어러블, AR/VR 기기를 위한 소프트웨어 시스템, 센서 데이터 분석 및 추론을 위한 분산 기계 학습 기법, 효율적 모바일 서비스 구현을 위한 분산 시스템 구조, 새로운 사용자 인터페이스 및 응용 설계 등, 성공적인 모바일 컴퓨팅 시스템의 디자인 및 개발을 위해 필요한 핵심 기술을 살펴보고, 이를 적용 발전시킬 수 있는 능력을 키우고자 한다.전선 / 대학원
이 과목에서는 유닉스 운영체제를 중심으로 운영체제의 내부 구조와 운영체제 분야의 최신 이론을 배운다. 수강생들은 또한 운영체제 관련 다수의 논문을 읽고 발표해야 하며, 운영체제와 연관된 프로젝트를 수행해야 한다. 강좌 내용을 요약하면, 유닉스의 구조와 발전, 운영체제 관련 논문 연구, 프로젝트 수행 등이다.전선 / 대학원
데이타베이스, 프로그래밍 언어, 그래픽스, 운영체계 등 시스템 소프트웨어에 있어서의 최신 동향과 주요 주제를 다룬다.전선 / 학사
본 과목의 전반부에서는 ARM 기반의 내장형 시스템 하드웨어의 이해와 주요 부분에 대한 설계 지식을 습득 한다. 기존 컴퓨터구조 및 관련 과목에서 마이크로프로세서 위주로 컴퓨터 구조를 소개하는 것에 대응하여, 본 과목에서는 메모리 시스템, 입출력 및 버스 등의 구조를 강조하여 소개하여, 내장형 시스템 전체의 하드웨어의 이해와 설계 능력을 배양하는데 그 목표를 둔다. 본 강의의 후반부에서는 내장형 시스템을 구성하는 주요 소프트웨어 구성 요소들을 소개하고 내장형 시스템이 요구하는 설계의 요건들을 만족하기 위한 설계 기법들을 학습한다. 실시간 OS, 디바이스 드라이버 등의 기능들을 소개하고 내장형 시스템의 주요 응용 (예: 멀티미디어 응용)에 대해서도 익힌다. 개발된 시스템의 성능 평가 및 성능 최적화 기법을 다루며 내장형 소프트웨어를 위한 검증 기법을 학습한다.