Home | History | Annotate | Download | only in benchmarks
      1 # Copyright 2013 The Chromium Authors. All rights reserved.
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 """The Endure benchmarks measure memory performance over a period of time.
      6 
      7 In each Endure benchmark, one page action is performed repeatedly and memory
      8 usage is measured periodically. The specific page actions are defined in the
      9 page sets, and the statistics that are gathered are determined by the Endure
     10 measurement class.
     11 """
     12 
     13 from telemetry import test
     14 
     15 from measurements import endure
     16 import page_sets
     17 
     18 
     19 class _EndureBenchmark(test.Test):
     20   """Base class which sets options for endure benchmarks below."""
     21   test = endure.Endure
     22   # Default options for endure benchmarks. Could be overridden in subclasses.
     23   options = {
     24       # Depending on the page and the actions performed on the page,
     25       # 1000 iterations should be between 30 and 60 minutes.
     26       'page_repeat': 1000,
     27       # One sample per 10 iterations -> 200 points per run.
     28       'perf_stats_interval': 10
     29   }
     30 
     31 
     32 class EndureCalendarForwardBackward(_EndureBenchmark):
     33   page_set = page_sets.CalendarForwardBackwardPageSet
     34 
     35 
     36 class EndureBrowserControl(_EndureBenchmark):
     37   page_set = page_sets.BrowserControlPageSet
     38 
     39 
     40 class EndureBrowserControlClick(_EndureBenchmark):
     41   page_set = page_sets.BrowserControlClickPageSet
     42 
     43 
     44 class EndureGmailAltThreadlistConversation(_EndureBenchmark):
     45   page_set = page_sets.GmailAltThreadlistConversationPageSet
     46 
     47 
     48 class EndureGmailAltTwoLabels(_EndureBenchmark):
     49   page_set = page_sets.GmailAltTwoLabelsPageSet
     50 
     51 
     52 class EndureGmailExpandCollapseConversation(_EndureBenchmark):
     53   page_set = page_sets.GmailExpandCollapseConversationPageSet
     54 
     55 
     56 class EndureIndexedDBOffline(_EndureBenchmark):
     57   page_set = page_sets.IndexeddbOfflinePageSet
     58 
     59 
     60 class EndurePlusAltPostsPhotos(_EndureBenchmark):
     61   page_set = page_sets.PlusAltPostsPhotosPageSet
     62 
     63