From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3855 invoked by alias); 18 May 2016 15:16:49 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: X-Seq: 21582 Received: (qmail 7548 invoked from network); 18 May 2016 15:16:47 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, T_DKIM_INVALID autolearn=ham autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=RJHFpU/SMQRyN3Y1+U9UcPOoPQARg7l2rIXTi/Rx8Ko=; b=Mum0ocHyWuw14lE6TBW99xLkqnKVp8fcFC1W8XeolI/GSjTp3HewE73fGkj3WkuK5k tIIAwy9zTmBbPpE9KrO60WXaph5dQMh3FOmlfxNNQ8ReB1NSGYJ6YSjrm/twqwSwCGiJ kDKLZZqeO49NYfVoy+ThgWnk0uZrP3Hzb35i7mwtJvBlD3v97/y+r8B7tzzJrafSt3fA vMvTlOgqcKWLeUWHAqcynOUs6zHQEe271F6GqyqaTgQmYjQxO6mqGHVOhyJwZ/zEKIjy xdvaaFe+MqVqWggiQsbiF/nDkBVMPXdRB3uXpY6NjRQ+b07oyLTZlyWIuDpddqVzlqwM 8Yog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=RJHFpU/SMQRyN3Y1+U9UcPOoPQARg7l2rIXTi/Rx8Ko=; b=Vyv64lrr7BQr6sd4+6HqlYs8Hvkl3p5zMhAjIdeE2qGnrhMCXQ7r8RY2lyWagJm4DH SVPn3PErU+K2n9yYcnWJUoYfWxITCBJARfe+jq9R6cY2flp476fX9EDX+bii16BlbRJY 0pjpTPaXAmZXQCGM0vC66xeCHS7RxRS/9coiPZvyyY4pnCM7/Vx1BUpj6u18T2mdClwE 0DJHsL1mDgpgb04hAepLBofLS2diGbxJe/ga/BmPJgCObVIFBc/XykQRwdEIuqe0KENx Z34ab6dYRzuLAYVCUgnWSwqNIWgcSUcTImolWtKH//XZwt8eA8Gd/Ty2bMASoJBnaIB/ GyOg== X-Gm-Message-State: AOPr4FV4BOxJPRo5iVumoG+9LTnTFcIRj7i5uxWG7vfwjvOqqX23Uox4zlD/EeU1Qs8eT0acFUoZfRwKeObLHQ== X-Received: by 10.112.154.5 with SMTP id vk5mr2921296lbb.126.1463584603500; Wed, 18 May 2016 08:16:43 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <160508093530.ZM9686@torch.brasslantern.com> From: Sebastian Gniazdowski Date: Wed, 18 May 2016 17:16:23 +0200 Message-ID: Subject: Re: One more heap optimization trick for zsh < 5.2 To: Bart Schaefer Cc: Zsh Users Content-Type: multipart/mixed; boundary=089e0122933c641ae805331f583d --089e0122933c641ae805331f583d Content-Type: text/plain; charset=UTF-8 On 17 May 2016 at 12:18, Bart Schaefer wrote: > On Mon, May 16, 2016 at 8:01 AM, Sebastian Gniazdowski > wrote: >> >> I was testing the same input with 89k lines. The cause now >> accidentally clarified. It's about zplugin's shadowing of autoload > > Are you sure it's the wrapper and not the autoloading? It's pretty > common for the first run of an autoloaded function to be slower than > subsequent runs. I tested with zplugin and without it, and slow down occurs in first case. Also, I wanted to move a normal function outside a file to make it autoloaded function. It started to be painfully slow when used with zplugin. Luckily I can optimize for 5.1 and use normal hand-made "autoload -X" body instead of the wrapper. So zplugin's future is in general safe. Tried to construct synthetic test (attached). In general the results are inconsistent. Their order changes depending even on given run. Could came up with following alerting times: # ./aload2.zsh.txt More special autoload: ( aload_fun; ) 3,68s user 0,18s system 98% cpu 3,909 total Special autoload: ( aload_fun; ) 3,08s user 0,18s system 99% cpu 3,277 total Normal autoload: ( aload_fun; ) 3,83s user 0,18s system 99% cpu 4,026 total # ./aload2.zsh.txt More special autoload: ( aload_fun; ) 2,90s user 0,19s system 99% cpu 3,115 total Special autoload: ( aload_fun; ) 3,24s user 0,18s system 99% cpu 3,436 total Normal autoload: ( aload_fun; ) 3,62s user 0,18s system 99% cpu 3,812 total # ./aload2.zsh.txt More special autoload: ( aload_fun; ) 2,86s user 0,18s system 99% cpu 3,050 total Special autoload: ( aload_fun; ) 3,22s user 0,18s system 99% cpu 3,402 total Normal autoload: ( aload_fun; ) 3,94s user 0,19s system 99% cpu 4,148 total Best regards, Sebastian Gniazdowski --089e0122933c641ae805331f583d Content-Type: text/plain; charset=US-ASCII; name="aload2.zsh.txt" Content-Disposition: attachment; filename="aload2.zsh.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iod0eypb0 IyEvYmluL3pzaAoKZW11bGF0ZSAtTFIgenNoCgotLXJlbG9hZC1hbmQtcnVuICgpIHsKICAgIGxv Y2FsIGZwYXRoX3ByZWZpeD0iJDEiIGF1dG9sb2FkX29wdHM9IiQyIiBmdW5jPSIkMyIKICAgIHNo aWZ0IDMKICAgIHVuZnVuY3Rpb24gIiRmdW5jIgogICAgbG9jYWwgRlBBVEg9IiRmcGF0aF9wcmVm aXgiOiIke0ZQQVRIfSIKICAgIGJ1aWx0aW4gYXV0b2xvYWQgJD1hdXRvbG9hZF9vcHRzICIkZnVu YyIKICAgICIkZnVuYyIgIiRAIgp9CgpmYm9keT0nIyEvYmluL3pzaApzdHI9IiIKc3RyPSR7KHI6 MTAwMDAwOjpfOilzdHJ9OwphcnI9KCAiJHsoQHM6OilzdHJ9IiApCnJlcGVhdCAxMDA7IGRvCiAg ICBhcnIyPSggIiR7KEBNKWFycjojKCNhMSlffSIgKQpkb25lCgojcHJpbnQgLXJsICIke2FycjJb QF19IgonCgplY2hvICIkZmJvZHkiID4gYWxvYWRfZnVuCiNjaG1vZCAreCBhbG9hZF9mdW4KCiMg TW9yZSBzcGVjaWFsIGF1dG9sb2FkClBMVUdJTl9ESVI9YHB3ZGAKZXZhbCAiCmZ1bmN0aW9uIGFs b2FkX2Z1biB7CiAgICAtLXJlbG9hZC1hbmQtcnVuICR7KHEpUExVR0lOX0RJUn0gJycgYWxvYWRf ZnVuCn0KIgplY2hvICJNb3JlIHNwZWNpYWwgYXV0b2xvYWQ6Igp0aW1lICggYWxvYWRfZnVuICkK dW5mdW5jdGlvbiBhbG9hZF9mdW4KCiMgU3BlY2lhbCBhdXRvbG9hZApldmFsICIKZnVuY3Rpb24g YWxvYWRfZnVuIHsKICAgIGxvY2FsIEZQQVRIPSRGUEFUSDpgcHdkYAogICAgYXV0b2xvYWQgLVgK fQoiCmVjaG8gIlNwZWNpYWwgYXV0b2xvYWQ6Igp0aW1lICggYWxvYWRfZnVuICkKdW5mdW5jdGlv biBhbG9hZF9mdW4KCiMgTm9ybWFsIGF1dG9sb2FkCkZQQVRIKz06YHB3ZGAKYXV0b2xvYWQgYWxv YWRfZnVuCmVjaG8gIk5vcm1hbCBhdXRvbG9hZDoiCnRpbWUgKCBhbG9hZF9mdW4gKQp1bmZ1bmN0 aW9uIGFsb2FkX2Z1bgoK --089e0122933c641ae805331f583d--