▲GN⁺ 2024-12-19 | parent | ★ favorite | on: Ruby의 JSON 최적화, Part 1(byroot.github.io)Hacker News 의견 Rails의 기본 jbuilder 사용은 JSON 렌더링을 느리게 만드는 요인 중 하나임 많은 부분을 jbuilder로 렌더링하면 속도가 느려짐 새로운 버전이 Twitter JSON 덤프를 파싱/인코딩하는 데 걸리는 시간에 대한 정보가 있는지 궁금함 이 주제에 대한 글이 매우 쉽게 이해되며, Ruby 코드를 벤치마크하고 최적화하고 싶어짐 작성자에게 감사함 훌륭한 글과 작업임 앞으로 Oj를 사용할 이유가 있는지 궁금함 매우 재미있는 글임 Ruby에 국한되지 않은 최적화, 예를 들어 escape 문자에 대한 조회 테이블을 사용할 때, 이미 존재하는 simdjson 같은 라이브러리를 활용하지 않는 이유가 궁금함 byroot의 작업을 사랑함 그의 기여와 생산성에 항상 놀람 Ruby-core 작업에 참여하고 싶지만, 자신의 기술에 맞는 것을 찾지 못해 동기부여가 떨어짐 Ruby C 관련 사람들이 더 자주 글을 쓴다면 Ruby를 더 발전시킬 수 있는 기술을 가진 사람들이 많아질 것임 C 프로파일러 조언이 훌륭했음 Ruby gem에 C 코드를 추가하여 최적화를 다시 시도해보고 싶음 Mame의 PR에서 사용된 "lookup table"이라는 성능 트릭이 인상적이었음 String#each_char 대신 String#each_codepoint를 사용하면 GC 부담을 줄일 수 있음 자신의 코드베이스에서 성능을 더 향상시킨 예시를 공유함 Array#pack을 사용하여 코드포인트를 수집하고 String으로 변환함 현대 CPU에서는 분기 예측 힌트가 쓸모없음 Ruby JSON이 intrinsic을 사용하는지 궁금함 다양한 JIT와의 호환성도 궁금함
Hacker News 의견
Rails의 기본 jbuilder 사용은 JSON 렌더링을 느리게 만드는 요인 중 하나임
새로운 버전이 Twitter JSON 덤프를 파싱/인코딩하는 데 걸리는 시간에 대한 정보가 있는지 궁금함
이 주제에 대한 글이 매우 쉽게 이해되며, Ruby 코드를 벤치마크하고 최적화하고 싶어짐
훌륭한 글과 작업임
매우 재미있는 글임
byroot의 작업을 사랑함
C 프로파일러 조언이 훌륭했음
Mame의 PR에서 사용된 "lookup table"이라는 성능 트릭이 인상적이었음
String#each_char대신String#each_codepoint를 사용하면 GC 부담을 줄일 수 있음자신의 코드베이스에서 성능을 더 향상시킨 예시를 공유함
Array#pack을 사용하여 코드포인트를 수집하고String으로 변환함현대 CPU에서는 분기 예측 힌트가 쓸모없음
Ruby JSON이 intrinsic을 사용하는지 궁금함