본문 바로가기
Jetbrains

인텔리제이 성능 저하로 스트레스 받으시죠? JetBrains Runtime 설정으로 30% 더 쾌적하게 만드는 가이드

by CodeByJin 2026. 3. 23.
반응형

개발자라면 하루 종일 붙어 있는 도구가 바로 인텔리제이(IntelliJ IDEA)일 텐데요. 처음에는 빠릿빠릿하다가도 프로젝트 규모가 커지고 플러그인이 쌓이다 보면 어느 순간 타이핑이 밀리거나 인덱싱 지옥에 빠지는 경험, 다들 한 번쯤 해보셨을 겁니다. 사실 이 부분이 가장 번거로우시죠? 컴퓨터 사양은 충분한 것 같은데 왜 자꾸 굼뜨게 움직이는지 답답할 때가 많습니다.

막상 해결 방법을 찾아보면 JVM 옵션이니 가비지 컬렉터니 하는 어려운 용어들 때문에 시작도 하기 전에 머리가 아파오곤 하는데요. 솔직히 말씀드리면, 복잡한 이론보다는 내 환경에 맞는 '한 끝' 차이의 설정이 성능을 결정합니다. 오늘은 별도의 비용 투자 없이도 JetBrains Runtime(JBR)과 내부 설정을 최적화해서 체감 속도를 확 끌어올리는 현실적인 방법들을 정리해 보았습니다. 효율적인 도구 세팅 하나가 여러분의 퇴근 시간을 앞당겨줄지도 모릅니다.

왜 하필 JetBrains Runtime(JBR)인가요?

우리가 보통 자바 개발을 할 때 쓰는 OpenJDK나 Oracle JDK가 아니라, 인텔리제이에는 전용 런타임인 JBR이 들어있습니다. 이게 중요한 이유는 인텔리제이 자체가 자바 기반의 Swing UI를 사용하기 때문입니다. 일반적인 JDK는 서버 사이드 실행에 최적화되어 있지만, JBR은 IDE의 폰트 렌더링, 하드웨어 가속, 그리고 윈도우/맥 OS와의 UI 궁합에 맞춰 튜닝되어 있습니다.

최신 버전의 인텔리제이는 설치 시 JBR 21 계열을 기본으로 포함하고 있지만, 간혹 예전 설정을 그대로 물려받아 엉뚱한 JDK 위에서 IDE가 돌아가는 경우가 있습니다. 이건 저만 아는 건데, IDE가 사용하는 런타임만 최신 JBR로 고정해줘도 폰트가 깨지거나 화면이 미세하게 끊기는 현상의 절반은 사라집니다. 마치 고성능 스포츠카에 일반 휘발유가 아닌 전용 고급유를 넣는 것과 같다고 보시면 됩니다.

현재 내 인텔리제이 상태 진단하기

설정을 바꾸기 전에 지금 내 IDE가 어떤 엔진으로 돌아가는지부터 봐야 합니다. 상단 메뉴의 Help -> About을 눌러보세요. Runtime 부분에 'JetBrains s.r.o'라는 문구가 포함되어 있는지 확인이 필요합니다. 만약 다른 JDK 이름이 적혀 있다면 당장 바꿔야 할 1순위 대상입니다.

또한, 하단 상태바를 우클릭해서 'Memory Indicator'를 켜두는 것을 추천합니다. 지금 내 메모리가 얼마나 차 있는지 실시간으로 봐야 내가 설정한 값이 효과가 있는지 알 수 있거든요. 표를 통해 내 컴퓨터 사양별 적정 메모리 할당량을 확인해 보세요.

내 컴퓨터 RAM 용량추천 -Xmx 설정값비고
8GB2048m ~ 3072m운영체제 메모리 확보를 위해 보수적 설정
16GB4096m ~ 6144m가장 권장되는 쾌적한 구간
32GB 이상8192m 이상대규모 마이크로서비스 프로젝트용

 
표를 보면 아시겠지만, 사실 16GB 램 환경에서 4GB~6GB 정도를 할당하는 구간이 가성비와 안정성 면에서 가장 좋습니다. 무작정 크게 잡는다고 좋은 게 아닌 이유는, 메모리가 너무 크면 가비지 컬렉터가 청소해야 할 쓰레기통이 너무 커져서 오히려 한 번 청소할 때 IDE가 멈추는 시간이 길어질 수 있기 때문입니다.

성능 30% 향상을 위한 핵심 VM Option 커스텀

이제 본격적으로 엔진을 튜닝할 차례입니다. Help -> Edit Custom VM Options를 클릭하면 설정 파일이 열립니다. 여기에 아래 내용들을 참고해서 덮어씌우거나 수정해 보세요. 2025~2026년 기준 JetBrains 공식 가이드와 커뮤니티에서 검증된 G1GC 최적화 옵션입니다.

  • -Xms4096m / -Xmx4096m: 초기값과 최대값을 동일하게 잡으세요. 메모리 크기를 유동적으로 늘리고 줄이는 과정에서 발생하는 연산 낭비를 막아줍니다.
  • -XX:+UseG1GC: 현대적인 가비지 컬렉터인 G1GC를 사용합니다. 응답 속도가 중요한 IDE 환경에 필수입니다.
  • -XX:MaxGCPauseMillis=200: GC로 인해 화면이 멈추는 시간을 최대 0.2초로 제한하라는 명령입니다. 타이핑 밀림 방지에 핵심적인 역할을 합니다.
  • -XX:+AlwaysPreTouch: 인텔리제이가 시작될 때 할당된 메모리를 미리 다 점유합니다. 실제 코딩 중에 메모리를 새로 요청하느라 멈칫거리는 현상을 줄여줍니다.
  • -Dsun.io.useCanonCaches=false: 파일 시스템 캐시 관련 설정인데, 파일이 많은 대형 프로젝트에서 인덱싱 속도를 개선해 주는 경우가 많습니다.

개인적으로 이 중에서 MaxGCPauseMillis 설정이 가장 핵심이라고 생각합니다. 인텔리제이가 '무겁다'고 느껴지는 건 절대적인 속도보다 내가 입력을 보냈을 때 즉각 반응하지 않는 '레이턴시' 때문인데, 이 옵션이 그 가려운 부분을 긁어줍니다.

하지만 이런 설정이 오히려 독이 될 수도 있는 상황

모든 약에는 부작용이 있듯이, 이런 튜닝도 주의가 필요합니다. 만약 여러분의 노트북이 배터리 절전 모드로 작동 중이라면 이런 고성능 옵션들은 오히려 CPU 팬을 미친 듯이 돌게 만들거나 배터리를 광속으로 소모시킬 수 있습니다.

또한, 너무 많은 플러그인을 설치해 둔 상태에서 메모리만 늘리는 것은 밑 빠진 독에 물 붓기입니다. 저도 처음에는 유용한 줄 알고 수십 개의 플러그인을 깔았었는데, 정작 안 쓰는 언어 지원 플러그인들만 꺼도 점유율이 20%는 내려가더군요. 성능 향상은 더하는 것보다 빼는 것에서 시작된다는 점을 기억해 주세요. 여러분은 평소에 쓰지 않는 플러그인을 얼마나 자주 정리하시나요?

쾌적한 개발 환경을 위한 추가 팁

설정을 마쳤다면 몇 가지 디테일을 더 챙겨보세요. Windows 사용자라면 반드시 백신 프로그램(Windows Defender 등)의 검사 예외 목록에 인텔리제이 설치 폴더와 프로젝트 작업 폴더를 추가해야 합니다. 이건 모르면 손해 보는 꿀팁인데, 백신이 실시간으로 소스 코드를 감시하느라 인덱싱 속도를 2배 이상 갉아먹는 경우가 허다합니다.

맥 사용자의 경우, 반드시 자신의 칩셋(Intel vs Apple Silicon)에 맞는 아키텍처용 JBR이 설치되어 있는지 확인하세요. 로제타로 돌아가는 인텔리제이는 아무리 튜닝해도 제 성능의 60%도 내지 못합니다. 3월이나 9월처럼 새로운 학기나 분기가 시작될 때 제조사에서 대규모 업데이트를 내놓는 경우가 많으니, JetBrains Toolbox 앱을 통해 항상 최신 빌드를 유지하는 것도 좋은 전략입니다.

실시간으로 내 환경에 맞는 최적의 플러그인 조합이나 최신 런타임 업데이트 소식을 공식 홈페이지에서 한 번씩 체크해 보시는 것이 좋습니다. 특히 Java 25 LTS 도입을 앞두고 관련 런타임 최적화가 계속 이뤄지고 있으니까요.

결국 중요한 것은 도구와의 호흡

인텔리제이 성능을 올리는 여러 수치와 옵션들을 살펴봤지만, 결국 핵심은 단순한 속도 수치가 아니라 개발자가 흐름을 놓치지 않고 코딩에 몰입할 수 있는 환경을 만드는 것입니다. 메모리를 8GB 할당하느냐 16GB 할당하느냐보다, 내 손가락의 움직임과 화면의 반응이 일치하는 그 '쾌적함'을 찾는 과정이 더 중요하죠.

제 생각에는 무조건 남의 설정을 따라 하기보다는, 오늘 소개한 VM 옵션들을 하나씩 적용해 보면서 내 컴퓨터가 가장 편안하게 반응하는 지점을 직접 찾아보는 것이 가장 좋아 보입니다. 한 번 세팅해두면 반년은 편안하게 코딩할 수 있으니까요. 혹시 여러분만의 독특한 성능 최적화 비법이 더 있으신가요? 지금 소개한 내용 외에도 최신 하드웨어 가속 기능을 활용한 대안들이 계속 나오고 있으니, 조금씩 관심을 가지고 도구를 다듬어 보시길 바랍니다.

RustRover Pro와 Tokio로 완성하는 최강의 Rust 비동기 개발 환경 가이드

Rust로 서버 백엔드나 고성능 네트워크 도구를 만들다 보면 반드시 마주치는 벽이 있죠. 바로 '비동기(Async)' 설정입니다. 사실 이 부분이 가장 번거로우시죠? 개념도 어려운데 런타임 설정까지 꼬

byteandbit.tistory.com

반응형