From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS14383 205.234.109.0/24 X-Spam-Status: No, score=-0.6 required=5.0 tests=AWL,FREEMAIL_FROM, RP_MATCHES_RCVD,T_DKIM_INVALID shortcircuit=no autolearn=unavailable version=3.3.2 X-Original-To: archivist@yhbt.net Delivered-To: archivist@dcvr.yhbt.net Received: from rubyforge.org (rubyforge.org [205.234.109.19]) by dcvr.yhbt.net (Postfix) with ESMTP id CDB941F4CB for ; Mon, 10 Oct 2011 17:07:38 +0000 (UTC) Received: from rubyforge.org (rubyforge.org [127.0.0.1]) by rubyforge.org (Postfix) with ESMTP id B26341858386; Mon, 10 Oct 2011 13:07:35 -0400 (EDT) X-Original-To: mongrel-unicorn@rubyforge.org Delivered-To: mongrel-unicorn@rubyforge.org Received: from mail-yx0-f178.google.com (mail-yx0-f178.google.com [209.85.213.178]) by rubyforge.org (Postfix) with ESMTP id 7C66C18581B2 for ; Mon, 10 Oct 2011 13:05:15 -0400 (EDT) Received: by yxj19 with SMTP id 19so7381020yxj.23 for ; Mon, 10 Oct 2011 10:05:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; bh=98I4Za3ka1uNE4+tNrc6UVfDy/n5O4DX7eVFT6MFCfo=; b=cpOt+rdfL+T4gMHJo5NBSdVUcCxUKnlGL+dMWdV5buT61dZc0NOvCCm6gSf+PDkkT5 zk6exqh/KE+hwYJhf/AI0CaQQOq5nbqF03ws3yA6/iEHC48XGflG86CbY0AELtzw44CD eyw/0jpNgyXSh6tDzD7yaFHpyBitWQP7fUCqQ= MIME-Version: 1.0 Received: by 10.150.7.12 with SMTP id 12mr7161102ybg.17.1318266315606; Mon, 10 Oct 2011 10:05:15 -0700 (PDT) Received: by 10.150.217.7 with HTTP; Mon, 10 Oct 2011 10:05:15 -0700 (PDT) In-Reply-To: References: <20111004225305.GA5373@dcvr.yhbt.net> Date: Mon, 10 Oct 2011 18:05:15 +0100 Message-ID: Subject: Re: Peformance up - using OobGC & GC.disable From: Tatsuya Ono To: unicorn list X-BeenThere: mongrel-unicorn@rubyforge.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Sender: mongrel-unicorn-bounces@rubyforge.org Errors-To: mongrel-unicorn-bounces@rubyforge.org This solution is awesome. I applied the patch on our staging server and I've confirmed a significant performance improve. Some pages(especially complicated ones) responds like 4 times faster than before. However it seems that we hit a same issue Yuichi had.=A0When we had an access on particular page, I can see memory size of worker increases 5-10MB... > Also, my rails application have memory leaks ;( > I wrote process killing code because GC.disable create more memory leak. > - https://gist.github.com/1258681 Beside I want to avoid to use this solution if possible... I don't actually understand is why GC.disable solution could introduce more memory leak. If I simplify the problem, the code is something like bellow: --------------- GC.disable (do something) GC.enable GC.start --------------- When the code block finishes, I expect that memory size should be (almost) equal with the case GC is enabled at begging. But it doesn't seems so from our experience. Do anyone know why there could be significant difference on memory usage because of timing of GC? It might be a question on Ruby rather than Unicorn, though, I thought even just sharing my experience could be worth to someone here. Tatsuya Ono _______________________________________________ Unicorn mailing list - mongrel-unicorn@rubyforge.org http://rubyforge.org/mailman/listinfo/mongrel-unicorn Do not quote signatures (like this one) or top post when replying