Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 21590 invoked from network); 29 May 2008 06:05:06 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 29 May 2008 06:05:06 -0000 Received: (qmail 51142 invoked by uid 500); 29 May 2008 06:05:08 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 51093 invoked by uid 500); 29 May 2008 06:05:08 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 51073 invoked by uid 99); 29 May 2008 06:05:08 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 28 May 2008 23:05:08 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 29 May 2008 06:04:28 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 852DF234C132 for ; Wed, 28 May 2008 23:04:45 -0700 (PDT) Message-ID: <2025552973.1212041085544.JavaMail.jira@brutus> Date: Wed, 28 May 2008 23:04:45 -0700 (PDT) From: "Aleksey Shipilev (JIRA)" To: commits@harmony.apache.org Subject: [jira] Commented: (HARMONY-5829) [drlvm][kernel][performance] j.l.Class Serializable/Externalizable caching In-Reply-To: <681064225.1210881775738.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HARMONY-5829?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12600688#action_12600688 ] Aleksey Shipilev commented on HARMONY-5829: ------------------------------------------- Nathan, we must fix the degradation now. The patch is also makes other class literals loaded to static fields just not to break the style of entire class. We can open another issue about class literal performance. Java bytecode disassembly shows the difference is only: - slow version: ldc #... // class java/io/Serializable - fast version: getstatic #...; //Field SERIALIZABLE:Ljava/lang/Class; > [drlvm][kernel][performance] j.l.Class Serializable/Externalizable caching > -------------------------------------------------------------------------- > > Key: HARMONY-5829 > URL: https://issues.apache.org/jira/browse/HARMONY-5829 > Project: Harmony > Issue Type: Sub-task > Components: DRLVM > Reporter: Aleksey Shipilev > Assignee: Nathan Beyer > Fix For: 5.0M7 > > Attachments: vm-kernel-serializable-externalizable-cache-rc1.patch, vm-kernel-serializable-externalizable-cache-rc2.patch, vm-kernel-serializable-externalizable-cache-rc3.patch, vm-kernel-serializable-externalizable-cache-V2-rc1.patch > > > Serialization workloads relies on Class.isAssignableFrom(...) when looking up Serializable and Externalizable properties (that is, implementation of interfaces). For now, DRLVM kernel classes perform lookups on each invocation. This issue caches the mentioned properties in Class fields and does not go to native VMClassRegistry for resolution. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.