분류
-
Ubuntu/Zorin OS 설치 파티션 설정컴퓨터 2023. 4. 16. 14:36
빈 공간을 선택하고 "추가" 버튼을 클릭하여 새로운 파티션을 생성합니다. 1. 루트 파티션을 생성하려면 다음 설정을 선택하세요: 크기: 약 20-30GB 정도를 권장합니다. 종류: Primary 위치: 디스크의 시작 파일 시스템: ext4 마운트 지점: / 2. 남은 빈 공간을 선택하고 "추가" 버튼을 클릭하여 스왑 파티션을 생성합니다. 크기: RAM 용량에 따라 4-8GB를 추천합니다. 종류: Primary 위치: 디스크의 시작 파일 시스템: swap area 스왑 파티션 크기에 대한 공식은 다양하며, 사용자의 실제 사용 패턴과 시스템 요구 사항에 따라 달라집니다. 일반적으로 램 크기에 따라 스왑 크기를 설정하는 것이 좋습니다. 24GB의 RAM이 있는 시스템의 경우, 다음과 같은 고려 사항이 있습니다..
-
Rust: cargo something 만들기컴퓨터/Rust 2023. 3. 28. 10:06
cargo-subcommand 소개 cargo inspect cargo depsize cargo korea cargo 기본 옵션에 없는 위와 같은 옵션은 어떻게 만들까? cargo-subcommand라고도 불리며 Cargo를 수정하지 않고 새 하위 명령어를 추가할 수 있도록 설계되었다. $PATH에 있는 바이너리 파일의 이름이 cargo-something으로 지정되면 cargo something처럼 실행하여 마치 Cargo 하위 명령어인 것처럼 사용할 수 있다. 이러한 사용자 정의 명령어는 cargo --list를 실행할 때 나열된다. 이 글에서는 실제로 만들어보고 사용하는 과정을 적었다. @코드 바로 보기 만들 cargo-depsize는 Cargo 패키지 매니저를 사용하여 현재 Rust workspac..
-
Rust: 카카오 Karlo API wrapper컴퓨터/Rust 2023. 3. 24. 17:00
Karlo 소개 카카오브레인 ‘카카오디벨로퍼스’에서 카카오브레인의 한층 더 발전된 AI 이미지 모델 ‘Karlo(이하 칼로)’를 API가 있다. Generative AI Karlo는 사용자가 입력한 문장을 기반으로 사실적인 이미지와 다양한 작품을 생성할 수 있는 AI 모델이다. 1억 8천만 장 규모의 이미지와 이미지를 설명하는 텍스트와의 관계를 학습했다고 한다. 총 3가지 기능이 있다. 사용자가 입력한 단어나 문장을 기반으로 관련된 이미지와 다양한 작품을 생성 (Image gen) 사용자가 업로드한 이미지를 기반으로 관련된 이미지와 다양한 작품을 생성 (Variation gen) 이미지에 그리기 도구로 편집할 부분을 마스킹하고, 입력 단어나 문장(공백 가능)을 기반으로 지운 부분을 채워 새로운 작품을 생..
-
Git BFG: commit 에서 파일이나 text 숨기기컴퓨터 2023. 2. 13. 14:43
때로 위처럼 아무 생각 없이 하드코딩된 hidden data나 파일들을 같이 commit에 올려버린다. BFG를 다운로드 하고 @링크 아래와 같은 식으로 파일이나, 텍스트 숨기면 된다. @문서 java -jar bfg.jar --strip-blobs-bigger-than 100M java -jar bfg.jar --replace-text passwords.txt java -jar bfg.jar --delete-files id_{dsa,rsa} git reflog expire --expire=now --all && git gc --prune=now --aggressive git push passwords.txt와 같은 파일에 내용물 예시는 다음과 같다. PASSWORD1은 바로 ***REMOVED***로 ..
-
Java: Z Garbage Collection (ZGC)컴퓨터/JAVA 2023. 1. 15. 15:14
ZGC Main - Main - OpenJDK Wiki wiki.openjdk.org 오늘은 Z Garbage Collection에 대하여 공부한 대로 글을 써본다. Java 11 부터 실험적으로 추가되어 Java 15에서는 어느새 Production Ready (PR) 상태까지 온 미래 GC 후보라고 볼 수 있다. (Z의 의미는 아무 뜻도 없다고 한다.) 목차는 다음과 같다. Introduction (소개) Basics of ZGC (ZGC 기본 지식) ZGC phases (ZGC 단계) Concurrent reference processing in ZGC (concurrent 레퍼런스 처리 in ZGC) Advanced Topics (심화 주제) Conclusion (결론) ◆ Introduction..
-
Blue-Green deployment (블루-그린 배포)컴퓨터 2023. 1. 11. 21:25
AWS EC2에서 서버를 실행하다가 (간단한 REST API 프로그램) 매번 코드를 고칠 때마다 다시 빌드하고 프로세스를 kill 하고 다시 실행했다. 여기서 어떻게 하면 재시작을 줄이고/없애고 코드를 업데이트할 수 있을까 궁금했다. 찾아보니 이미 알고있던 Hot-reloading도 있는데 ec2에서 Rust를 계속 빌드하게 하고 싶진 않았다. 여러 방법들이 있는데 Blue-Green deployment: 하나는 이전 버전의 코드(Blue)를 실행하고 다른 하나는 새 버전의 코드(Green)를 실행하는 두 가지 동일한 환경이 있다. 새 버전을 배포할 준비가 되면 트래픽을 Green 환경으로 전환하고 완전히 작동하는지 확인한 후 Blue 환경을 종료할 수 있게 하는 방법 Canary Deployment: ..
-
Python: Global Interpreter Lock (GIL)컴퓨터/파이썬 2023. 1. 5. 21:49
GIL Python Wiki In CPython, the global interpreter lock, or GIL, is a mutex that protects access to Python objects, preventing multiple threads from executing Python bytecodes at once. The GIL prevents race conditions and ensures thread safety. wiki.python.org Introduction Global Interpreter Lock (GIL) GIL은 여러 네이티브 스레드가 동시에 파이썬 바이트 코드를 실행하는 것을 방지하는 메커니즘이다. 파이썬의 reference implementation인 CPython ..
-
Cython: QuickSort code컴퓨터/파이썬 2023. 1. 1. 21:40
cimport: This directive is used to import a Cython-level version of the numpy module. ctypedef: This directive is used to define a Cython type alias for numpy.int_t. cdef: This directive is used to define a Cython function or variable. Cython functions and variables are compiled to C and are not accessible from Python. nogil: This decorator is used to indicate that a Cython function does not nee..