Return-Path: X-Original-To: apmail-flink-dev-archive@www.apache.org Delivered-To: apmail-flink-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6FB9418F7B for ; Mon, 7 Mar 2016 10:18:24 +0000 (UTC) Received: (qmail 71909 invoked by uid 500); 7 Mar 2016 10:18:24 -0000 Delivered-To: apmail-flink-dev-archive@flink.apache.org Received: (qmail 71842 invoked by uid 500); 7 Mar 2016 10:18:24 -0000 Mailing-List: contact dev-help@flink.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@flink.apache.org Delivered-To: mailing list dev@flink.apache.org Received: (qmail 71830 invoked by uid 99); 7 Mar 2016 10:18:23 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 07 Mar 2016 10:18:23 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 552F3C0679 for ; Mon, 7 Mar 2016 10:18:23 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.299 X-Spam-Level: * X-Spam-Status: No, score=1.299 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=2, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id BnrGq9W0iqvx for ; Mon, 7 Mar 2016 10:18:22 +0000 (UTC) Received: from mail-ig0-f172.google.com (mail-ig0-f172.google.com [209.85.213.172]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 5D2795FADC for ; Mon, 7 Mar 2016 10:18:21 +0000 (UTC) Received: by mail-ig0-f172.google.com with SMTP id vs8so21314074igb.1 for ; Mon, 07 Mar 2016 02:18:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to; bh=VzcXFAwWjOr/AMmVYxHqp6EIi770Eq4EdIn2Jta9Hw4=; b=ji5W+X20M/SGo3cN+C0GnYpmT0VaFMot/wTezplXSk7pTQ+obyNN06jrAnJowlmjXs 4+hY0Hl9G3qPDbUGLFST05ncnouSmSrFrwH4NpgLMvamK6lvkHun68O9FpkVhGIKGcSl /gu1+kDQaG5OWqKzYuga5Sr22L7z5s4kx1kblKi//HNOc0bKCVz483f+vQGCKDK5QrV5 wwOrV/PiEmSxuvOuwk00Zsx5u4uLWxnaWtZA5MDo9URYC6M5Skbbc41KP9EcirkIDUcO pMMp5bahsbajiLW4IKmXTt2JTWSkI3YLXJ5og+uPk+AARO/Vavwq1mTlTBqHrBeSgFKz O6ww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to; bh=VzcXFAwWjOr/AMmVYxHqp6EIi770Eq4EdIn2Jta9Hw4=; b=C07Hk56nWmXNFFrU7yx+U1CDPvTvmEVmFECtzFuQbnJ4/MUJ8iwsmv5rIfqvAZmj6N +oirzFD7+NI8ny+HiqJMmo3poWwQo3EOdMQeoAxSt5r0MWws9Vl55uQCJCuRJRCKN8ky RKrELfhmdS3onwueoO1EOL0x3eMUiKLsqVgczsj9ySkl0eZrGviEnpVAIyxOZG+MSOvW ctByVw7K85gbfpIOuFb9vZPDmG/LoG73otqbneg5LU7Z7Weh4mGMYIZfi9JFO0EHrqw9 lNNskFlZgdY92VN3nz08kOuvQNl9/WFluBp9XyEBElHwPiJx7by2WLuhO7Ay8uC8yABM e5UA== X-Gm-Message-State: AD7BkJJW47ITzgbsuoeQq7/Sg0wxXN6W04zGrSvhtcYHYm5pzSIzbq2zuB5jGClHBLBGyAyXUK37CbWSUqJBYA== MIME-Version: 1.0 X-Received: by 10.50.79.168 with SMTP id k8mr11472056igx.55.1457345900352; Mon, 07 Mar 2016 02:18:20 -0800 (PST) Sender: ewenstephan@gmail.com Received: by 10.107.12.79 with HTTP; Mon, 7 Mar 2016 02:18:20 -0800 (PST) In-Reply-To: References: Date: Mon, 7 Mar 2016 11:18:20 +0100 X-Google-Sender-Auth: D3748rdjnPtPi5mNg1sHbi8wEnU Message-ID: Subject: Re: Tuple performance and the curious JIT compiler From: Stephan Ewen To: "dev@flink.apache.org" Content-Type: multipart/alternative; boundary=047d7bf198eeb4a122052d72c884 --047d7bf198eeb4a122052d72c884 Content-Type: text/plain; charset=UTF-8 Hi Greg! Sounds very interesting. Do you have a hunch what "virtual" Tuple methods are being used that become less jit-able? In many cases, tuples use only field accesses (like "vakle.f1") in the user functions. I have to dig into the serializers, to see if they could suffer from that. The "getField(pos)" method for example should always have many overrides (though few would be loaded at any time, because one usually does not use all Tuple classes at the same time). Greetings, Stephan On Fri, Mar 4, 2016 at 11:37 PM, Greg Hogan wrote: > I am noticing what looks like the same drop-off in performance when > introducing TupleN subclasses as expressed in "Understanding the JIT and > tuning the implementation" [1]. > > I start my single-node cluster, run an algorithm which relies purely on > Tuples, and measure the runtime. I execute a separate jar which executes > essentially the same algorithm but using Gelly's Edge (which subclasses > Tuple3 but does not add any extra fields) and now both the Tuple and Edge > algorithms take twice as long. > > Has this been previously discussed? If not I can work up a demonstration. > > [1] https://flink.apache.org/news/2015/09/16/off-heap-memory.html > > Greg > --047d7bf198eeb4a122052d72c884--