[컴][파이썬] pyenv 를 windows에서 사용하면서 생긴 tip

 

pyenv 를 windows에서 사용하면서 생긴 tip

powershell 에서 virtual env 사용시 tip

profile 에 activate 함수

python -m venv .venv

powershell 에서는 activate.bat대신에 \.venv\Scripts\Activate.ps1 를 실행해야 한다.

powershell profile 에 아래처럼 함수를 만들어 놓으면 편하다.

function activate {
    $venv = ".\.venv\Scripts\Activate.ps1"
    if (Test-Path $venv) {
        & $venv
    } else {
        Write-Host "No .venv found in current directory"
    }
}

pip-autoremove

우연히 package 삭제를 알아보다가. pip-autoremove 가 괜찮다고 해서 python3 에서 설치하는데 실행시점에 module 이 없다고 나옴. 알고보니 pip3-autoremove 가 따로 있었음.

pip install pip-autoremove 는 이제 pip install pip3-autoremove 로 변경 됨

[컴] fnm 사용해서 nodejs 설치

 

fnm , winget설치, 노드 설치

fnm 사용해서 nodejs 설치

필자는 기본 폴더가 아닌 d:\ 에 설치하려고 한다.

그래서 fnm 도 release 에 download 해서 설치했다.

  1. fnm설치
  2. 시스템 환경 변수 편집 화면에서 ’환경변수’에 d:\a\apps\node_fnm\ 추가
  3. 윈도우 환경 변수에 FNM_DIR이라는 항목을 추가
    • FNM_DIR : d:\a\apps\node_fnm\nodejs
  4. fnm install --lts
    • d:\a\apps\node_fnm\nodejs\node-versions\v24.14.1\ 에 설치된다.
  5. notepad $PROFILE
    • c:\Users\<User_name>\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
    • 다음을 넣고, 저장 fnm env --use-on-cd | Out-String | Invoke-Expression
    • & $PROFILE 로 profile 적용
    • node -v 를 해서 잘 동작하는지 확
  6. fnm use lts-latest

[컴] 원격으로 pc 전원 켜기

 

원격 켜기 / pc 켜기 /

원격으로 pc 전원 켜기

개인적으로 WoWLAN 을 하고 싶었지만, 무선랜카드가 지원하지 않아서 다른 방법들을 찾아보았다.

1. 중간에 공유기를 하나 더 두고, pc에 유선을 연결해서 Wake On LAN 사용

wireless endpoint 에 공유기를 하나 더 두고, 거기서 유선을 이용해 pc에 연결하면 Wake On LAN을 사용할 수 있다.

2. 스마트플러그 이용

개인적으로 이 방법이 가장 저렴하고 알맞는 방법처럼 보인다.

3. Tuya Bluetooth 스위치

4. 원격스위치, 데스크탑 컴퓨터용

이 상품은 유효거리가 10m 로 짧아서 밖에서 켜는 등의 원거리 전원 켜기에 적합하지 않다.

[컴] NVidia Multi-Instance GPU (MIG)

 

엔비디아

NVidia Multi-Instance GPU (MIG)

MIG 개념

Multi-Instance GPU (MIG) | NVIDIA

  • GPU를 최대 7개의 인스턴스로 분할할 수 있으며,
  • 각 인스턴스는 고대역폭 메모리, 캐시 및 컴퓨팅 코어를 갖춘 완벽한 격리 환경을 제공
  • 이를 통해 관리자는 가장 작은 워크로드부터 가장 큰 워크로드까지 모든 워크로드를 지원하고,
  • 서비스 품질(QoS)을 보장하며,
    • MIG(메모리 통합)를 사용하지 않으면 동일한 GPU에서 실행되는 여러 작업(예: 서로 다른 AI 추론 요청)이 동일한 리소스를 놓고 경쟁.
    • 메모리 대역폭을 많이 사용하는 작업이 다른 작업에 자원을 부족하게 만들어 여러 작업이 목표 지연 시간을 달성하지 못하게 된다.
    • MIG를 사용하면 작업이 서로 다른 인스턴스에서 동시에 실행되며, 각 인스턴스는 컴퓨팅, 메모리 및 메모리 대역폭에 대한 전용 리소스를 갖게 되어 QoS(서비스 품질)를 보장하고 GPU 활용률을 극대화하여 예측 가능한 성능을 제공한다.
  • GPU는 크기가 다른 MIG 인스턴스로 분할할 수 있다.
    • 예를 들어 NVIDIA GB200 의 경우 관리자는 각각 95GB 메모리를 가진 인스턴스 2개, 각각 45GB 메모리를 가진 인스턴스 4개 또는 각각 23GB 메모리를 가진 인스턴스 7개를 생성할 수 있다.
  • MIG 인스턴스는 동적으로 재구성할 수 있으므로 관리자는 변화하는 사용자 및 비즈니스 요구에 맞춰 GPU 리소스를 조정할 수 있다.
    • 예를 들어, 낮에는 7개의 MIG 인스턴스를 낮은 처리량의 추론에 사용하고 밤에는 딥러닝 학습을 위해 하나의 대규모 MIG 인스턴스로 재구성할 수 있다.
    • 이전 암페어(Ampere) 아키텍처에선 GPU 를 reset 해야 MIG mode 를 켤 수 있었지만, Hopper 부터는 reset 이 필요없다.
    • MIG Manager supports dynamic reconfiguration of the MIG geometry.

MIG profile 구성

로봇칩에선 어떻게 쓰이나?

Multi-Instance GPU | 피지컬 AI를 위한 궁극의 플랫폼 NVIDIA Jetson Thor을 소개합니다. - NVIDIA Technical Blog

  • 이를 통해 중요한 워크로드에는 리소스를 고정할 수 있고, 우선순위가 낮은 작업은 병렬로 실행할 수 있어, 다양한 중요도가 혼합된 로보틱스 애플리케이션에 적합

PVA, Programmable Vision Accelerator

PVA backend, VPI - Vision Programming Interface: Architecture

  • PVA 는 프로세서, 이미지 처리 및 컴퓨터 비전 알고리즘에 특화되어 있습니다.
  • GPU만 수행할 수 있는 다른 작업을 실행하기 위해 GPU를 자유롭게 해야 할 경우 PVA 백엔드를 사용해라.
    • 딥러닝 추론 단계나 CUDA 백엔드에서만 구현되는 알고리즘처럼
  • PVA 하드웨어는 CPU 및 CUDA 하드웨어보다 전력 효율이 훨씬 높다. 따라서 전력 소모가 중요한 경우 가능한 한 PVA 백엔드를 사용해라.

Optimizing the CV Pipeline in Automotive Vehicle Development Using the PVA Engine | NVIDIA Technical Blog

  • PVA(Programmable Vision Accelerator) 의 구조
  • 자율주행 차량을 개발하는 많은 개발자들은 SoC의 연산 자원이 부족해 CPU, GPU, VIC, DLA에 과부하가 걸리는 문제에 직면하고 있다. 이것이 시스템 안정성과 지연 시간에 부정적인 영향을 미칠 수 있다.
  • 이러한 문제를 해결하기 위한 방안으로, 과도하게 사용 중인 SoC 하드웨어 엔진의 부하를 줄이기 위해 PVA 하드웨어를 이용해서 연산을 분산시키는(오프로딩) 방법이 검토되고 있다.
  • PVA로 오프로딩할 수 있는 처리 작업의 예
    • 이미지 처리: 일부 이미지 처리 및 컴퓨터 비전(CV) 작업은 PVA로 포팅하여 GPU, CPU, VIC, 심지어 DLA의 부하까지 줄일 수 있습니다.
    • 딥러닝 연산: 딥러닝 네트워크 내에서 특정 레이어나 연산 집약적인 오퍼레이터(예: ROI Align)는 PVA로 오프로딩할 수 있습니다. 특정 조건에서는 소규모 딥러닝 네트워크 전체를 PVA로 포팅하는 것도 가능합니다.
    • 수학 연산: PVA는 벡터 SIMD VLIW DSP 구조를 갖추고 있어 행렬 연산, FFT 등과 같은 수학 연산을 효율적으로 처리할 수 있습니다.

[컴] Cloudflare 로 도메인 registar 변경

도메인 이전 / 클라우드플레어 / 닷컴 도메인 저렴하게 / registar 변경 방법 / 클라우드플레어 사용법 / 이전법

Cloudflare 로 도메인 registar 변경

  • 이전하려는 곳에서 ’도메인전송 인증코드’를 이미 받은 상황이다.
  • .com 주소를 이관하려는 상황

제한사항

Transfer your domain to Cloudflare | Cloudflare Registrar docs

  • Cloudflare Registrar 를 쓰는 모든 도메인은 Cloudflare DNS 를 써야 한다.
  • Cloudflare registrar 를 쓰는 동안은 다른 dns 를 쓸 수 없다.

See Also

  1. 도메인 주소(.com) 다른 업체로 이전하는 방법

Reference

  1. Transfer your domain to Cloudflare | Cloudflare Registrar docs

jay.ns.cloudflare.com joselyn.ns.cloudflare.com

[컴][머신러닝] AI coding agent 를 써보고 남기는 후기

 

코딩 에이전트 / coding agent / coding AI

https://news.ycombinator.com/item?id=46255285

AI coding agent 를 써보고 남기는 후기

  • google 의 Antigravity :  
    • https://antigravity.google/download 
    • 지금은 무료다. 앞으로도 무료일지는 모르겠다.
    • 좋다. 기존의 다른 agent 보다 낫다. 이유는 IDE 를 agent 중심의 IDE로 개편했기 때문이라고 볼 수 있다. 
    • ctrl + e 를 누르면 agent 모드가 나오는데, 여기서 agent 와 대화하면, agent 가 구현해서 보여주고, 어떻게 할까요? 물어보는 등 좀 더 자연스러운 UI 를 제공한다. 
  • GitHub Copilot 무료버전 :
    • VS Code에서 GitHub Copilot을 무료로 제공합니다 | Microsoft Community Hub
    • 매달 2000개의 코드 자동 완성을 사용
    • 월 50회의 채팅 요청
    • vscode나 github page에서 현재 사용량을 파악할 수 있다.
    • 나쁘진 않으나, context 설정을 하는 것이 조금은 귀찮은 면이 있다.
    • 가격이 착한편이라고 생각한다. 가장 저렴한 것은 무료이고, 그 다음은 한달에 10달러
  • AmazonQ : 좋다, ai coding agent 가 좋다. 월에 limit 이 있다.
  • cline : openroute 를 통해서 무료 llm을 사용하면 좋다. 그렇지 않은 경우 오히려 code 전문 ai agent 를 사용하는 것이 더 저렴할 수 있다.
    • https://www.reddit.com/r/openrouter/comments/1jeknm9/when_do_free_daily_limits_reset/?tl=ko : UTC 00:00 에 credit 이 refresh 된다.
  • qodo(과거 codeium) : 여기도 한달 limit 이 있다. / 그렇게 좋지 않다. 마치 github copilot 과 비슷한데, 편의성이 좀 떨어지는 느낌이다.
  • Cursor :
    • vscode가 아닌 vscode를 fork 한 자체 IDE를 써야 한다.
    • 그래서 ms 의 extension 등을 사용할 수 없거나, 최신 extension 의 사용이 안된다고 한다.
    • 개인적으로 그래서 별로 안쓰게 됨
  • claude code :
  • AMP
    • Cody 시절에 써봤는데 좋다고 생각한다. 다만, 지금은 가격정책이 명확치 않아서 가성비가 좋은지는 모르겠다.
    • Sourcegraph | Pricing

무료 AI chat agent 들

[컴][유틸] Windows 11 에서 nvim 사용시

neovim / 윈도우에서 vim/ neovim / simple ide /

Windows 11 에서 nvim 사용시

Windows 에서 설치

nvim에서 :terminal 등을 실행할때 cmd 가 아니라 powershell 을 사용하도록 하는 법

init.lua의 path

운영체제 설정 파일 경로
Linux/macOS ~/.config/nvim/init.lua 또는 ~/.config/nvim/init.vim
Windows %userprofile%\AppData\Local\nvim\init.lua 또는 init.vim

init.lua

-- PowerShell을 기본 쉘로 사용하도록 설정
vim.opt.shell = "powershell"
vim.opt.shellcmdflag =
  "-NoLogo -NoProfile -ExecutionPolicy RemoteSigned -Command [Console]::InputEncoding=[Console]::OutputEncoding=[System.Text.Encoding]::UTF8;"
vim.opt.shellredir =
  "2>&1 | Out-File -Encoding UTF8 %s; exit $LastExitCode"
vim.opt.shellpipe =
  "2>&1 | Out-File -Encoding UTF8 %s; exit $LastExitCode"

새로운 theme 를 추가하는 법

  • %UserProfile%\AppData\Local\nvim\lua\plugins\colorscheme.lua 을 추가

return {
  -- 1. 테마 플러그인 추가
  {
    "craftzdog/solarized-osaka.nvim",
    name = "solarized-osaka",
    lazy = false,
    priority = 1000,
    opts = {},
  },
  {
    "Mofiqul/vscode.nvim",
    name = "vscode",
    lazy = false,
    priority = 1000,
    opts = {},
  },
  {
    "gmr458/vscode_modern_theme.nvim",
    lazy = false,
    priority = 1000,
    config = function()
        require("vscode_modern").setup({
            cursorline = true,
            transparent_background = false,
            nvim_tree_darker = true,
        })
        vim.cmd.colorscheme("vscode_modern")
    end,
  },

  -- 2. LazyVim의 기본 테마를 새로 추가한 테마로 설정
  {
    "LazyVim/LazyVim",
    opts = {
      colorscheme = "vscode_modern",
    },
  },
}

양끝에 괄호 넣기 등 surround 기능 켜기

설치방법 :

  • LazyExtras 명령을 실행한다.
  • 목록에서mini.surround 항목을 찾아 커서를 두고 x 키를 눌러 활성화한다.
  • nvim을 재시작하면 lazy.nvim이 자동으로 플러그인을 설치하고 설정을 적용

사용법:

  • Visual mode (v)에서 구간 선택
  • gsa -> 괄호등의 둘러쌓을 키

단축키

  • <space> + f + p : project 변경
  • <ctrl> + h or j or k or l : 커서를 다른 창으로 움직일때 사용
  • <Shift> + h or l : tab 이동
  • :new : 새 tab 열기
  • ciw : Change Inner Word
  • caw : Change A Word

See Also

  1. Say Goodbye to Your IDE: Meet LazyVim