본문 바로가기

전체 글35

[2023-03-02~2023-03-23] 전문연구요원 보충역 훈련소 후기 2023년 3월 2일부터 23일까지 전문연구요원으로 훈련소를 다녀왔습니다. 검색을 좀 해보니 2023년 이후 후기가 많이 없는 것 같아 제 경험을 돌이켜 작성해봅니다. 준비물 필수 캐리어 큰 거 : 나올때 들고 오는게 진짜 많습니다 (군복, 군화, 기타 물품들). 캐리어 큰 거에 여유 공간도 남겨서 가는걸 추천드립니다. 추가로 에코백이나 비닐봉지 등을 들고 가면 더 좋습니다. 저도 처음 들었을 때는 농담인줄 알았는데 진짭니다. 귀마개 : 평소 수면 패턴이랑 너무 달라서 잠이 잘 안 오는데, 거기에 다른 사람이 코까지 골면 진짜 잠 못 잡니다. 몇 개 가져가서 나눠줘도 좋을 것 같네요. 손목 시계 : 불침번 설 때 많이 봅니다. 저 같은 경우 10분에 한 번씩 복도를 돌아다니는게 있었는데 이 때 유용하게 .. 2023. 4. 17.
Template Meta Programming으로 matrix 라이브러리 만들기 (3) 이전 포스팅에서는 Expression tree를 위한 MatrixExpr, 기본적인 행렬을 표현하는 Matrix, 행렬 간 덧셈을 표현하는 MatrixSum을 구현 후 불필요한 복사가 없는 행렬 덧셈을 구현하였다. Expression tree를 만드는 과정과 이를 evaluation 하는 과정을 분리할 수 있었고, 이를 통해 실제 값이 필요한 시점에 계산을 할 수 있다 (lazy evaluation). 이와 비슷한 방법으로 행렬 간 뺄셈, element-wise 한 곱셈 (아다마르 곱) 등을 구현할 수 있을 것이다. 하지만 lazy evaluation은 모든 경우에 대해 항상 효율적이지 못하다. 이번 포스팅에서는 그 대표적인 예 중 하나인 행렬간 곱셈을 구현하면서 자세히 알아보자. 1. MatrixMul.. 2022. 7. 30.
오픈소스 프로젝트 홍보 및 그 후기 서론 공부가 하기 싫을 때 괜히 책상 정리부터 하는 것처럼, 연구실에 있을 때 일 하기가 싫어서 컴퓨터 꾸미기에 관심이 있던 적이 있다. 그때 눈여겨봤던 프로젝트 중 하나가 himawaripy 였는데, 설정하기도 귀찮고 무엇보다 윈도우 환경에서 돌아가지 않아서 접었던 기억이 있다. 그 후 몇 달이 지나 지인 중 한 명이 himawaripy에 star를 누른 걸 보고 잠깐 이야기를 했는데, "갑자기 우리나라에는 위성이 없나?" 하는 생각이 들었고, 그때 (2021년)부터 이 프로젝트를 진행하기 시작했다. 우리나라 인공위성 천리안 2A호에서 오는 사진을 컴퓨터 배경화면으로 바꾸는 데스크탑 앱이고, 이름은 천리안 월페이퍼. GitHub - pjessesco/ChollianWallPaper: 🌎 Real tim.. 2022. 7. 26.
Template Meta Programming으로 matrix 라이브러리 만들기 (2) 이전 포스팅에서는 TMP를 적용하면 좋은 점에 대해 알아보았다. 이제 실제 구현한 코드를 보며 행렬의 덧셈까지 구현해보자. 1. MatrixExpr 클래스 Expression template의 아이디어는 모든 행렬과 식을 각각 고유한 타입으로 나타내는 것이다. Expression을 나타낼 클래스를 이렇게 구현했다. template struct MatrixExpr{ inline auto elem(Index r, Index c) const{ return static_cast(*this).elem(r, c); } inline auto& elem(Index r, Index c) { return static_cast(*this).elem(r, c); } static constexpr Index row = E::r.. 2022. 7. 17.