GPUTLBOptions.py revision 12647
112647Santhony.gutierrez@amd.com# Copyright (c) 2011-2015 Advanced Micro Devices, Inc. 212647Santhony.gutierrez@amd.com# All rights reserved. 311308Santhony.gutierrez@amd.com# 412647Santhony.gutierrez@amd.com# For use for simulation and test purposes only 511308Santhony.gutierrez@amd.com# 612647Santhony.gutierrez@amd.com# Redistribution and use in source and binary forms, with or without 712647Santhony.gutierrez@amd.com# modification, are permitted provided that the following conditions are met: 811308Santhony.gutierrez@amd.com# 912647Santhony.gutierrez@amd.com# 1. Redistributions of source code must retain the above copyright notice, 1012647Santhony.gutierrez@amd.com# this list of conditions and the following disclaimer. 1111308Santhony.gutierrez@amd.com# 1212647Santhony.gutierrez@amd.com# 2. Redistributions in binary form must reproduce the above copyright notice, 1312647Santhony.gutierrez@amd.com# this list of conditions and the following disclaimer in the documentation 1412647Santhony.gutierrez@amd.com# and/or other materials provided with the distribution. 1511308Santhony.gutierrez@amd.com# 1612647Santhony.gutierrez@amd.com# 3. Neither the name of the copyright holder nor the names of its 1712647Santhony.gutierrez@amd.com# contributors may be used to endorse or promote products derived from this 1812647Santhony.gutierrez@amd.com# software without specific prior written permission. 1911308Santhony.gutierrez@amd.com# 2012647Santhony.gutierrez@amd.com# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 2112647Santhony.gutierrez@amd.com# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2212647Santhony.gutierrez@amd.com# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2312647Santhony.gutierrez@amd.com# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 2412647Santhony.gutierrez@amd.com# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 2512647Santhony.gutierrez@amd.com# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 2612647Santhony.gutierrez@amd.com# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 2712647Santhony.gutierrez@amd.com# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 2812647Santhony.gutierrez@amd.com# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 2912647Santhony.gutierrez@amd.com# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 3012647Santhony.gutierrez@amd.com# POSSIBILITY OF SUCH DAMAGE. 3111308Santhony.gutierrez@amd.com# 3212647Santhony.gutierrez@amd.com# Authors: Myrto Papadopoulou 3311308Santhony.gutierrez@amd.com 3411308Santhony.gutierrez@amd.comdef tlb_options(parser): 3511308Santhony.gutierrez@amd.com 3611308Santhony.gutierrez@amd.com #=================================================================== 3711308Santhony.gutierrez@amd.com # TLB Configuration 3811308Santhony.gutierrez@amd.com #=================================================================== 3911308Santhony.gutierrez@amd.com 4011308Santhony.gutierrez@amd.com parser.add_option("--TLB-config", type="string", default="perCU", 4111308Santhony.gutierrez@amd.com help="Options are: perCU (default), mono, 2CU, or perLane") 4211308Santhony.gutierrez@amd.com 4311308Santhony.gutierrez@amd.com #=================================================================== 4411308Santhony.gutierrez@amd.com # L1 TLB Options (D-TLB, I-TLB, Dispatcher-TLB) 4511308Santhony.gutierrez@amd.com #=================================================================== 4611308Santhony.gutierrez@amd.com 4711308Santhony.gutierrez@amd.com parser.add_option("--L1TLBentries", type='int', default="32") 4811308Santhony.gutierrez@amd.com parser.add_option("--L1TLBassoc", type='int', default="32") 4911308Santhony.gutierrez@amd.com parser.add_option("--L1AccessLatency", type='int', default="1", 5011308Santhony.gutierrez@amd.com help="latency in gpu cycles") 5111308Santhony.gutierrez@amd.com parser.add_option("--L1MissLatency", type='int', default="750", 5211308Santhony.gutierrez@amd.com help="latency (in gpu cycles) of a page walk, " 5311308Santhony.gutierrez@amd.com "if this is a last level TLB") 5411308Santhony.gutierrez@amd.com parser.add_option("--L1MaxOutstandingReqs", type='int', default="64") 5511308Santhony.gutierrez@amd.com parser.add_option("--L1AccessDistanceStat", action="store_true") 5611308Santhony.gutierrez@amd.com parser.add_option("--tot-L1TLB-size", type="int", default="0") 5711308Santhony.gutierrez@amd.com 5811308Santhony.gutierrez@amd.com #=================================================================== 5911308Santhony.gutierrez@amd.com # L2 TLB Options 6011308Santhony.gutierrez@amd.com #=================================================================== 6111308Santhony.gutierrez@amd.com 6211308Santhony.gutierrez@amd.com parser.add_option("--L2TLBentries", type='int', default="4096") 6311308Santhony.gutierrez@amd.com parser.add_option("--L2TLBassoc", type='int', default="32") 6411308Santhony.gutierrez@amd.com parser.add_option("--L2AccessLatency", type='int', default="69", 6511308Santhony.gutierrez@amd.com help="latency in gpu cycles") 6611308Santhony.gutierrez@amd.com parser.add_option("--L2MissLatency", type='int', default="750", 6711308Santhony.gutierrez@amd.com help="latency (in gpu cycles) of a page walk, " 6811308Santhony.gutierrez@amd.com "if this is a last level TLB") 6911308Santhony.gutierrez@amd.com parser.add_option("--L2MaxOutstandingReqs", type='int', default="64") 7011308Santhony.gutierrez@amd.com parser.add_option("--L2AccessDistanceStat", action="store_true") 7111308Santhony.gutierrez@amd.com 7211308Santhony.gutierrez@amd.com #=================================================================== 7311308Santhony.gutierrez@amd.com # L3 TLB Options 7411308Santhony.gutierrez@amd.com #=================================================================== 7511308Santhony.gutierrez@amd.com 7611308Santhony.gutierrez@amd.com parser.add_option("--L3TLBentries", type='int', default="8192") 7711308Santhony.gutierrez@amd.com parser.add_option("--L3TLBassoc", type='int', default="32") 7811308Santhony.gutierrez@amd.com parser.add_option("--L3AccessLatency", type='int', default="150", 7911308Santhony.gutierrez@amd.com help="latency in gpu cycles") 8011308Santhony.gutierrez@amd.com parser.add_option("--L3MissLatency", type='int', default="750", 8111308Santhony.gutierrez@amd.com help="latency (in gpu cycles) of a page walk") 8211308Santhony.gutierrez@amd.com parser.add_option("--L3MaxOutstandingReqs", type='int', default="64") 8311308Santhony.gutierrez@amd.com parser.add_option("--L3AccessDistanceStat", action="store_true") 8411308Santhony.gutierrez@amd.com 8511308Santhony.gutierrez@amd.com #=================================================================== 8611308Santhony.gutierrez@amd.com # L1 TLBCoalescer Options 8711308Santhony.gutierrez@amd.com #=================================================================== 8811308Santhony.gutierrez@amd.com 8911308Santhony.gutierrez@amd.com parser.add_option("--L1ProbesPerCycle", type='int', default="2") 9011308Santhony.gutierrez@amd.com parser.add_option("--L1CoalescingWindow", type='int', default="1") 9111308Santhony.gutierrez@amd.com parser.add_option("--L1DisableCoalescing", action="store_true") 9211308Santhony.gutierrez@amd.com 9311308Santhony.gutierrez@amd.com #=================================================================== 9411308Santhony.gutierrez@amd.com # L2 TLBCoalescer Options 9511308Santhony.gutierrez@amd.com #=================================================================== 9611308Santhony.gutierrez@amd.com 9711308Santhony.gutierrez@amd.com parser.add_option("--L2ProbesPerCycle", type='int', default="2") 9811308Santhony.gutierrez@amd.com parser.add_option("--L2CoalescingWindow", type='int', default="1") 9911308Santhony.gutierrez@amd.com parser.add_option("--L2DisableCoalescing", action="store_true") 10011308Santhony.gutierrez@amd.com 10111308Santhony.gutierrez@amd.com #=================================================================== 10211308Santhony.gutierrez@amd.com # L3 TLBCoalescer Options 10311308Santhony.gutierrez@amd.com #=================================================================== 10411308Santhony.gutierrez@amd.com 10511308Santhony.gutierrez@amd.com parser.add_option("--L3ProbesPerCycle", type='int', default="2") 10611308Santhony.gutierrez@amd.com parser.add_option("--L3CoalescingWindow", type='int', default="1") 10711308Santhony.gutierrez@amd.com parser.add_option("--L3DisableCoalescing", action="store_true") 108