CWN(CHANGE WITH NEWS) - 프로젝트 레이든, 자바 프로그램 개선 위한 ′콘덴서′ 제공 예고

  • 맑음부산21.3℃
  • 맑음영주13.1℃
  • 맑음금산14.7℃
  • 맑음홍천16.2℃
  • 맑음창원19.9℃
  • 맑음전주17.4℃
  • 맑음보성군16.8℃
  • 맑음순천13.6℃
  • 구름많음김해시19.5℃
  • 맑음수원15.4℃
  • 맑음양산시18.9℃
  • 흐림정선군14.1℃
  • 맑음원주15.2℃
  • 맑음포항19.9℃
  • 맑음서산15.1℃
  • 맑음의성16.7℃
  • 맑음영광군15.8℃
  • 맑음서울18.0℃
  • 맑음영덕16.8℃
  • 맑음고창15.5℃
  • 맑음문경15.1℃
  • 맑음목포19.6℃
  • 구름많음북부산18.7℃
  • 맑음서청주14.9℃
  • 맑음강화15.4℃
  • 맑음순창군15.1℃
  • 맑음동두천16.0℃
  • 맑음인제16.0℃
  • 맑음동해17.6℃
  • 맑음보령16.6℃
  • 맑음보은14.2℃
  • 맑음거창13.2℃
  • 맑음양평16.3℃
  • 맑음영월15.3℃
  • 맑음장흥15.0℃
  • 맑음광주17.9℃
  • 맑음의령군15.6℃
  • 맑음철원16.4℃
  • 맑음북춘천16.4℃
  • 맑음정읍16.3℃
  • 맑음남해18.4℃
  • 맑음해남15.3℃
  • 맑음북창원19.9℃
  • 맑음춘천16.4℃
  • 맑음안동16.2℃
  • 맑음이천16.5℃
  • 맑음고창군15.6℃
  • 맑음임실14.6℃
  • 구름조금성산19.2℃
  • 흐림울릉도20.5℃
  • 맑음제천13.0℃
  • 맑음강릉18.9℃
  • 맑음거제18.5℃
  • 맑음구미17.4℃
  • 구름많음영천18.8℃
  • 맑음홍성15.0℃
  • 맑음완도18.3℃
  • 맑음진도군15.8℃
  • 맑음파주14.7℃
  • 맑음부안16.7℃
  • 맑음합천17.3℃
  • 구름조금서귀포21.5℃
  • 맑음남원15.1℃
  • 맑음경주시17.1℃
  • 맑음울진18.0℃
  • 맑음산청15.4℃
  • 구름조금제주20.3℃
  • 맑음고산21.8℃
  • 맑음세종15.9℃
  • 맑음부여15.5℃
  • 맑음장수11.9℃
  • 맑음군산16.8℃
  • 맑음태백11.0℃
  • 맑음추풍령14.2℃
  • 맑음강진군15.7℃
  • 맑음청주17.8℃
  • 구름조금대구19.7℃
  • 맑음충주16.2℃
  • 맑음통영19.3℃
  • 맑음대전16.2℃
  • 맑음함양군14.1℃
  • 맑음대관령11.6℃
  • 맑음울산18.1℃
  • 맑음속초17.2℃
  • 맑음상주15.5℃
  • 맑음고흥15.0℃
  • 맑음천안14.8℃
  • 맑음북강릉16.7℃
  • 맑음인천19.4℃
  • 맑음여수19.8℃
  • 맑음흑산도20.3℃
  • 구름조금청송군14.7℃
  • 맑음백령도19.0℃
  • 맑음광양시17.9℃
  • 맑음밀양18.2℃
  • 맑음진주15.7℃
  • 맑음봉화12.1℃
  • 2025.10.01 (수)

프로젝트 레이든, 자바 프로그램 개선 위한 '콘덴서' 제공 예고

최정인 / 기사승인 : 2022-10-27 10:08:00
  • -
  • +
  • 인쇄

자바 프로그램의 성능, 시작 시간, 공간(footprint) 개선을 위한 프로젝트 레이든(Project Leyden)이 콘덴서(condenser)를 제공한다고 발표하였다. 콘덴서는 컴파일 타임과 런타임 사이에 실행되는 코드로, 기존 프로그램을 빠른 속도를 구현하면서도 작은 신규 프로그램으로 전환한다.

해외 IT 매체 인포월드는 오라클의 자바 플랫폼 그룹 수석 아키텍트 마크 레인홀드(Mark Reinhold)를 인용, 프로그램의 시작 시간과 공간은 일부 연산을 일시적으로 런타임 전후로 이전하여 개선할 수 있다고 전했다.

또, 클래스 로딩과 재정의 등 자바의 동적 기능과 관련된 일부 연산 작업을 제한하며, 성능을 추가로 강화할 수 있다. 결과적으로 더 나은 코드 분석과 최적화 작업이 가능하다.

프로젝트 레이든은 콘덴서를 통하여 연산 작업 이전, 제한 및 최적화 전환을 구축한다. 또한, 신규 언어 기능을 조사해, 개발자가 연산 작업을 직접 이전하여 추가 압축이 가능하도록 지원할 계획이다. 그러나 자바 플랫폼 표준의 진화가 필요하다. JAR 파일과 같은 코드 아티팩트를 위한 JDK 툴과 형식도 콘덴서 지원을 위해 확장돼야 한다.

콘덴서 모델은 개발자에게 융통성을 제공한다. 개발자는 적용할 콘덴서를 선택하여 자바의 원동력 제한 요소 수용 여부를 선택할 수 있다. 콘덴서 모델은 자바 버전에 자유를 부여하기도 한다. 콘덴서가 프로그램의 본질을 유지하면서 개발자가 허락한 제한 요소만 적용한다면, 해당 버전은 더욱 자유롭게 결과를 최적화할 수 있다.

레인홀드는 개시 시간과 공간을 개선하기 위한 최선책으로 제거해도 되는 연산을 찾는 것을 언급했다. 제거 가능한 연산을 찾을 수 없다면, 시간상 앞이나 뒤로 이동할 수 있는 연산을 찾으면 된다.

사실, 연산 처리 시간 이동 개념 자체는 새로운 혁신이 아니다. 이미 자바에는 연산을 이동시킬 수 있는 여러 기능이 존재한다. 가령, 컴파일 타임 상수 폴딩은 런타임에서 컴파일 타임으로 연산을 이동하며, 가비지 컬렉션은 메모리 호출을 시간상 앞으로 당긴다. 이외에도 사전 계산이나 클래스 데이터 셰어링 등의 선택적인 연산 이동 메커니즘이 존재한다.

한편, 프로젝트 레이든은 올해 초 본격적으로 진행되기 전 2년 전부터 거론되었다. 프로젝트는 자바 개발 부서 내부 핫스팟 가상머신과 코어 라이브러리 그룹이 주관한다.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue