Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 906B5200CAF for ; Thu, 22 Jun 2017 19:07:57 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 8F0BF160BE7; Thu, 22 Jun 2017 17:07:57 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id CEC11160BD3 for ; Thu, 22 Jun 2017 19:07:56 +0200 (CEST) Received: (qmail 92169 invoked by uid 500); 22 Jun 2017 17:07:54 -0000 Mailing-List: contact reviews-help@aurora.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: reviews@aurora.apache.org Delivered-To: mailing list reviews@aurora.apache.org Received: (qmail 92149 invoked by uid 99); 22 Jun 2017 17:07:54 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 22 Jun 2017 17:07:54 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id 9AA4C1A0521; Thu, 22 Jun 2017 17:07:53 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.001 X-Spam-Level: *** X-Spam-Status: No, score=3.001 tagged_above=-999 required=6.31 tests=[HEADER_FROM_DIFFERENT_DOMAINS=0.001, HTML_MESSAGE=2, KAM_LAZY_DOMAIN_SECURITY=1, RP_MATCHES_RCVD=-0.001, URIBL_BLOCKED=0.001] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id NrVQKc9PQ0gk; Thu, 22 Jun 2017 17:07:52 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTP id 154545FC99; Thu, 22 Jun 2017 17:07:51 +0000 (UTC) Received: from reviews.apache.org (unknown [10.41.0.12]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 614E8E02AA; Thu, 22 Jun 2017 17:07:51 +0000 (UTC) Received: from reviews-vm2.apache.org (localhost [IPv6:::1]) by reviews.apache.org (ASF Mail Server at reviews-vm2.apache.org) with ESMTP id 4F811C4075A; Thu, 22 Jun 2017 17:07:51 +0000 (UTC) Content-Type: multipart/alternative; boundary="===============2977635137087279786==" MIME-Version: 1.0 Subject: Re: Review Request 60354: Observer task page to load consumption info from history From: David McLaughlin To: Santhosh Kumar Shanmugham , David McLaughlin Cc: Aurora , Reza Motamedi Date: Thu, 22 Jun 2017 17:07:51 -0000 Message-ID: <20170622170751.61730.1686@reviews-vm2.apache.org> X-ReviewBoard-URL: https://reviews.apache.org/ Auto-Submitted: auto-generated Sender: David McLaughlin X-ReviewGroup: Aurora X-Auto-Response-Suppress: DR, RN, OOF, AutoReply X-ReviewRequest-URL: https://reviews.apache.org/r/60354/ X-Sender: David McLaughlin References: <20170622152843.61729.39664@reviews-vm2.apache.org> In-Reply-To: <20170622152843.61729.39664@reviews-vm2.apache.org> Reply-To: David McLaughlin X-ReviewRequest-Repository: aurora archived-at: Thu, 22 Jun 2017 17:07:57 -0000 --===============2977635137087279786== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/60354/#review178711 ----------------------------------------------------------- Overall approach LGTM. Just a little readability nit below. src/main/python/apache/thermos/monitoring/resource.py Line 160 (original), 166 (patched) I think better variable names would help with reading this code. - David McLaughlin On June 22, 2017, 3:28 p.m., Reza Motamedi wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/60354/ > ----------------------------------------------------------- > > (Updated June 22, 2017, 3:28 p.m.) > > > Review request for Aurora, David McLaughlin and Santhosh Kumar Shanmugham. > > > Repository: aurora > > > Description > ------- > > # Observer task page to load consumption info from history > > Resource consumptions of Thermos Processes are periodically calculated by TaskResourceMonitor threads (one thread per Thermos task). This information is used to display a (semi) fresh state of the tasks running on a host in the Observer host page, aka landing page. An aggregate history of the consumptions is kept at the task level, although TaskResourceMonitor needs to first collect the resource at the Process level and then aggregate them. > > On the other hand, when an Observer _task page_ is visited, the resources consumption of Thermos Processes within that task are calculated again and displayed without being aggregated. This can become very slow since time to complete resource calculation is affected by the load on the host. > > By applying this patch we take advantage of the periodic work and fulfill information resource requested in Observer task page from already collected resource consumptions. > > > Diffs > ----- > > src/main/python/apache/thermos/monitoring/resource.py 434666696e600a0e6c19edd986c86575539976f2 > src/test/python/apache/thermos/monitoring/test_resource.py d794a998f1d9fc52ba260cd31ac444aee7f8ed28 > > > Diff: https://reviews.apache.org/r/60354/diff/2/ > > > Testing > ------- > > I stress tested this patch on a host that had a slow Observer page. Interestingly, I did not need to do much to make the Observer slow. There are a few points to be made clear first. > - We at Twitter limit the resources allocated to the Observer using `systemd`. The observer is allowed to use only 20% of a CPU core. The attached screen shots are from such a setup. > - Having assigned 20% of a cpu core to Observer, starting only 8 `task`s, each with 3 `process`es is enough to make the Observer slow; 11secs to load `task page`. > > > File Attachments > ---------------- > > page load timing stats with the patch - chrome water fall view > https://reviews.apache.org/media/uploaded/files/2017/06/22/6cec6645-6a2d-46bb-997f-fef53bb15c19__with_patch_-_Screen_Shot_2017-06-21_at_10.17.24_PM.png > page load timing stats without the patch - chrome water fall view > https://reviews.apache.org/media/uploaded/files/2017/06/22/0916cd47-07ec-48da-bf52-9560c21c1f60__without_patch_-_Screen_Shot_2017-06-21_at_10.16.28_PM.png > > > Thanks, > > Reza Motamedi > > --===============2977635137087279786==--