LogoRRR 26.8.0 · 성능 실측

파일 전체가 더 이상
Java heap에 들어갈 필요가 없습니다.

수 GiB 로그를 열고 중간이나 끝으로 이동해도 Java heap은 일정한 범위에 머뭅니다. 최대 8 GiB 파일을 256 MiB Java heap으로 테스트했습니다.

$ open production.log

파일
8 GiB
Java heap 한도
256 MiB
첫 창
155 ms
유지된 Java heap
3.62 MiB
프로세스 PSS
159.2 MiB

처음 · 중간 · 끝 사용 가능

32×파일 대 Java heap 비율

8 GiB 파일, 256 MiB Java heap

155 ms첫 사용 가능 창까지

메모리를 제한한 8 GiB 테스트

3.62 MiB유지된 Java heap

처음, 중간, 끝을 연 뒤

69×사용 가능 데이터까지 단축

2 GiB 데이터로 26.8.0과 26.2.0 비교

전체 파일을 메모리에 담는 방식에서 필요한 부분만 읽는 방식으로

26.8.0 이전에는 파일이 커질수록 유지되는 행 객체도 수백만 개씩 늘었습니다. out-of-core 엔진은 작업 데이터 크기를 제한하고 요청된 원본 구간만 필요할 때 읽습니다.

출시 버전24.4 · 25.2 · 26.2
로그 파일모든 행Java heap

2 GiB 테스트 파일에서는 약 3.21 GiB의 Java heap이 유지되었습니다. 4 GiB 파일에서는 기존 출시 버전 세 개 모두 4 GiB Java heap을 소진했습니다.

LogoRRR26.8.0
로그 파일제한된 창화면

8 GiB 파일의 처음, 중간, 끝을 연 뒤 유지된 Java heap은 3.62 MiB에 불과했습니다. 테스트의 Java heap 한도는 256 MiB였습니다.

네 세대의 LogoRRR로 같은 2 GiB 로그 열기

각 값은 파일별 캐시를 비운 뒤 성공한 세 번의 실행에서 얻은 중앙값입니다. 아래의 작은 범위는 실제로 측정된 최솟값과 최댓값입니다.

24.4.0
7.66 s7541–8876 ms
25.2.0
8.41 s8243–8511 ms
26.2.0
9.89 s9863–10607 ms
26.8.0
144 ms143–150 ms
Java heap을 최대 4 GiB로 설정한 2 GiB 통제 비교
버전엔진준비유지된 Java heap최대 PSS실행 횟수
24.4.0전체 상주7.66 s3.08 GiB4.19 GiB3
25.2.0전체 상주8.41 s3.21 GiB4.21 GiB3
26.2.0전체 상주9.89 s3.21 GiB4.21 GiB3
26.8.0out-of-core144 ms3.58 MiB159.2 MiB3

사용 가능한 데이터까지 69배 빨라지고, 유지되는 Java heap은 918분의 1로 줄었습니다. 2 GiB 테스트 파일에서 26.8.0과 비교 대상 중 가장 최근 출시 버전인 26.2.0을 비교한 결과입니다.

출시 버전은 4 GiB에서 Java heap을 소진하지만 26.8.0은 계속 작동합니다

4 GiB Java heap에서는 모든 버전이 2 GiB 파일 테스트를 통과했습니다. 파일이 4 GiB가 되자 전체 상주 엔진은 모두 heap을 소진했습니다. 새 엔진은 4 GiB와 8 GiB 테스트를 모두 통과했습니다.

테스트 파일 크기별 통제 비교. 통과한 조건마다 세 번 실행
파일24.4.025.2.026.2.026.8.0
500 MiB 통과 통과 통과 통과
1 GiB 통과 통과 통과 통과
2 GiB 통과 통과 통과 통과
4 GiB Java heap 소진 Java heap 소진 Java heap 소진 통과
8 GiB 재실행 안 함 재실행 안 함 재실행 안 함 통과

한 버전에서 Java heap이 소진된 뒤에는 같은 실패를 반복하지 않고 더 큰 파일을 ‘재실행 안 함’으로 표시했습니다.

파일은 8배, 메모리 사용량은 거의 그대로

LogoRRR 26.8.0의 Java heap을 256 MiB로 제한했습니다. 파일이 1 GiB에서 8 GiB로 커지는 동안 유지된 Java heap은 약 3.6 MiB, 전체 프로세스 PSS는 약 159 MiB를 유지했습니다.

1 GiB
처음
152 ms
중간
13 ms
6 ms
Java heap
3.56 MiB
PSS
157.3 MiB
2 GiB
처음
146 ms
중간
13 ms
7 ms
Java heap
3.58 MiB
PSS
160.0 MiB
4 GiB
처음
146 ms
중간
14 ms
9 ms
Java heap
3.59 MiB
PSS
158.9 MiB
8 GiB
처음
155 ms
중간
18 ms
12 ms
Java heap
3.62 MiB
PSS
159.2 MiB

각 값은 세 번 실행한 중앙값입니다. 각 창의 실제 측정 범위는 아래 방법 표에서 확인할 수 있습니다.

파일 크기에 비례한 메모리가 아니라 저장 장치 속도가 처리 시간을 좌우합니다

첫 창을 반환하기 위해 원본 전체를 읽을 필요가 없어졌습니다. 다만 모든 바이트를 확인해야 하는 작업은 여전히 드라이브와 파일 시스템 속도의 영향을 받습니다.

별도로 진행한 500 MiB 파일의 정확 검색 테스트에서 첫 일치는 3.38 s 만에 나타났습니다. 전체 탐색에는 34.8 s가 걸렸고 처리량은 14.4 MiB/s였습니다.

첫 일치3.38 s
전체 탐색34.8 s
500 MiB 결정적 테스트 파일 · 세 번 실행한 중앙값

재현 가능하며 보수적인 경계를 둔 측정

각 빌드의 실제 로더 코드와 결정적으로 생성한 비희소 파일을 사용했습니다. 매번 별도 JVM에서 실행했으며 프로세스 메모리는 운영체제에서 측정했습니다.

01

통제된 입력

고정 너비의 결정적 UTF-8 로그 행을 사용하고, 측정 전에 비희소 파일로 생성했습니다.

02

콜드 파일 정책

매 실행 전에 테스트 파일에 해당하는 운영체제 캐시를 비웁니다. 시스템 전체 캐시는 지우지 않습니다.

03

프로세스 메모리

가비지 컬렉션 뒤 유지된 Java heap을 측정합니다. 최대 비례 집합 크기(PSS)는 다음 파일에서 읽습니다: /proc/<pid>/smaps_rollup.

04

두 가지 테스트 조건

4 GiB Java heap으로 모든 버전을 실패 지점까지 비교합니다. 별도 조건에서는 26.8.0을 256 MiB로 제한하고 1, 2, 4, 8 GiB 파일을 테스트합니다.

256 MiB Java heap으로 실행한 LogoRRR 26.8.0. 중앙값과 측정 범위
파일첫 창중간유지된 Java heap최대 PSS
1 GiB152 ms 149–15913 ms 12–146 ms 6–73.56 MiB157.3 MiB
2 GiB146 ms 143–14613 ms 12–137 ms 7–73.58 MiB160.0 MiB
4 GiB146 ms 141–15314 ms 13–159 ms 9–103.59 MiB158.9 MiB
8 GiB155 ms 153–15718 ms 15–1812 ms 12–123.62 MiB159.2 MiB

환경

Ubuntu 24.04.4 LTS, aarch64, 8 logical CPUs, openjdk version "25.0.2" 2026-01-20.

빌드

  • 24.4.0출시일 2024-06-06, 파일 logorrr_24.4.0_arm64.deb, SHA-256 27a4aea231dc78ba4b3838cc57361728bc714926f9270731bd7637eba8dda065
  • 25.2.0출시일 2025-12-23, 파일 logorrr_25.2.0_arm64.deb, SHA-256 f8de52dccb4224a25b0689aaef9d64618e98102d7134e637b249d1830c516fb1
  • 26.2.0출시일 2026-03-03, 파일 logorrr_26.2.0_arm64.deb, SHA-256 cfec5dd09753ba90167199aa5d94f388448fc518f7629bf598b7debb01489cca
  • 26.8.0 — 출시 마무리 단계의 소스 스냅샷 f5e31853, 26.8.0으로 빌드 및 측정

측정 자료 식별값

비교 결과 SHA-256: 7de25d018ba40d51504ccd265f03a5ef8167bd9ae52d543e66880444d5223024

스트레스 테스트 SHA-256: 7f480db156fd24d6fa3d6946ea24c003ae8dd54abff5a3621c646aff2b58281e

이 결과는 해당 테스트 파일, 장비, 절차에만 적용되며 모든 드라이브나 작업을 대표하지 않습니다. ‘저장 장치 속도에 좌우됨’은 테스트한 파일 크기 한계가 더 이상 유지된 Java heap에 비례하지 않는다는 뜻입니다. 원본 전체를 읽는 작업은 여전히 저장 장치 처리량의 영향을 받습니다. 테스트한 최대 파일: 8 GiB.

예전에는 너무 커서 열지 못했던 로그를 여세요

전체 파일 접근은 LogoRRR Pro 기능입니다. 무료 미리보기에는 의도적인 제한이 있어 대용량 파일 기능을 잠금 해제하기 전에 작업 흐름을 확인할 수 있습니다.

LogoRRR 받기