1 
2  /*
3  ***********************************************************************
4  Copyright (c) 2015 Advanced Micro Devices, Inc.
5  All rights reserved.
6 
7  Redistribution and use in source and binary forms, with or without
8  modification, are permitted provided that the following conditions
9  are met:
10 
11  1. Redistributions of source code must retain the above copyright
12  notice, this list of conditions and the following disclaimer.
13 
14  2. Redistributions in binary form must reproduce the above copyright
15  notice, this list of conditions and the following disclaimer in the
16  documentation and/or other materials provided with the distribution.
17 
18  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22  HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 
30  ***********************************************************************
31  */
32 
33 #ifndef INVENTORY_TYPES_SS_H
34 #define INVENTORY_TYPES_SS_H
35 
36 typedef enum ExecType_ {
37 	basic = 1,
38 	Case_a = 2, //Simulate n runs on n workitems using two streams and their substreams
39 	Case_b = 3, //Simulate n runs on n workitems using n distinct streams
40 	Case_c = 4, //Simulate n2 runs on n1 workitmes using 2n1 streams and their substreams
41 	Case_d = 5  //Simulate n2 runs on n1 workitems using 2n2 streams
42 } ExecType;
43 
44 typedef enum ExecOption_ {
45 	OnePolicy = 0,
46 	Option1 = 1, // Simulate n = n1.n2 runs for p policies, with n1 work items and n2 runs per work item
47 	Option2 = 2  // Simulate n = n1.n2 runs for p policies, with n1p work items and n2 runs per work item,
48 } ExecOption;
49 
50 #endif
51