분류 전체보기

개요 악보 생성 단계는 총 3단계로 나뉘어져있었습니다. 1) 음원 분리 2) 코드 추출 3) 악보 배치 단계로 이루어져있었는데요 이러한 단계가 완료될때마다 해당 음원을 요청한 사용자에게 악보 생성정도를 전파해줘야 했습니다. 특정 악보가 처음 요청 될 경우 N 개의 추론서버중 1개의 유효한 추론서버가 메세지를 가져와서 처리하면 되었기 때문에 Topic 기반 이벤트 전파 방식이 아닌 메세지 큐를 사용하고 Long Polling 방식으로 메세지를 하나의 서버에서 한번만 가져와서 처리할 수 있도록 하였습니다. Redis 를 통한 API 서버에 이벤트 전달 1) 악보 생성 단계를 실시간으로 전파해야하고, 2) 동일한 음원에 대한 악보 생성 요청이 동시에 혹은 아주 짧은 시간의 간격을 두고 요청이 올 경우에 대해 ..
· 운영체제
개요 페이지 테이블은 각 프로세스마다 가지고 있으며 메모리내에 OS 가 관리할 수 있는 영역에 저장이됨 따라서 페이지 테이블의 크기를 줄이는 것은 중요함 PTE(Page Table Entry) 의 크기가 4Byte == 32bit 로 가정하고 각 페이지의 크기가 2^12 바이트일경우 2^32 / 2^12 개의 entry 가 존재할 수 있음 2^20 * 4KB == 4MB 페이지 테이블 크기를 줄일 수 있는 방법 페이지 크기를 늘린다. entry 의 개수가 줄어듬 내부 단편화 문제, 메모리 낭비 문제 발생 Segmentation 기법 사용 Code, Stack, Heap 세그멘트에 각각 페이지 테이블을 생성 segment를 위한 base, bound register 가 필요함 Context-Switch 시..
· 기타
목적 어떤 인프라스트럭처든 간에 하나의 작업 흐름으로 프로비저닝하는 것 큰 규모의 조직에서 Terrform 의 사용을 관리할 때의 사용패턴은 “collaborative infrasturcture as code” 라고 부름 프로비저닝이란 준비, 예제, 설비의 뜻을 가지고 있음 IT 인프라 자원을 사용자 또는 비즈니스의 요구사항에 맞게 할당, 배치, 배포해서 시스템을 사용 할 수 있도록 만들어 놓는 작업을 의미함 근본적인 도전 기술적 복잡성 인프라스트럭처 프로바디어는 새로운 리소스를 프로비저닝할때 다른 인터페이스를 사용하고 작업을 매일 하며 인터페이스의 불일치성 때문에 추가 비용이 발생하게 됨 Terraform 은 프로비저닝 작업을 분리해 이런 복잡성을 해결함 IAC 의 구성을 읽고 리소스 간의 관계를 결정..
컴파일러가 나오게 된 배경 고급언어가 나오기 이전 소프트웨어는 전부 어셈블리어로 작성되어왔음. 어셈블리어는 기계어와 매핑이 되는 저급 수준의 언어임. 하지만 CPU 의 아키텍처가 다르면 해당 아키텍처와 호환히 되는 어셈블리어를 다시 작성해야했음. 이러한 문제점을 해결하기 위해 고급언어가 등장함 고급언어로 프로그램을 작성하면 이를 기계어로 변환하여 CPU 가 해석할 수 있게해야하는데 고급언어에서 기계어로 변환을해주는 소프트웨어가 바로 컴파일러와 인터프리터임 컴파일러 전체 파일을 스캔하여 한꺼번에 번역한다. 초기 스캔시간이 오래 걸리지만, 한번 실행 파일이 만들어지고 나면 빠르다. 기계어 번역과정에서 더 많은 메모리를 사용한다. 전체 코드를 스캔하는 과정에서 모든 오류를 한꺼번에 출력해주기 때문에 실행 전에..
캐시 메모리 캐시 메모리는 CPU 에서 메모리를 참조할때의 병목을 줄이기 위해 사용되는 SRAM 기반의 메모리 (속도가 느린장치와 빠른 장치의 병목을 해결하기 위해, 웹 서비스에서도 사용되는 개념임) ex1) CPU 코어와 메모리 사이의 병목 현상 완화 ex2) 웹 브라우저 캐시파일은, 하드디스크와 웹페이지 사이의 병목 현상을 완화 빠른 Access 속도를 얻을 수 있지만, 용량이 적고 비용이 비싸다는 단점이 존재함 CPU 는 L1, L2, L3 캐시를 사용하고 속도와 크기에 따라서 이를 구분함 일반적으로 L1캐시부터 사용됨 듀얼 코어 프로세서에서의 캐시 메모리 각 코어마다 독립된 L1 캐시 메모리를 가지고, 두 코어가 공유하는 L2캐시 메모리가 내장됨 만약 L1 캐시가 128KB면 NKB, MKB 씩 ..
파커초
'분류 전체보기' 카테고리의 글 목록 (5 Page)