SST/macro
lib_compute_inst.h
Go to the documentation of this file.
1 /*
2  * This file is part of SST/macroscale:
3  * The macroscale architecture simulator from the SST suite.
4  * Copyright (c) 2009 Sandia Corporation.
5  * This software is distributed under the BSD License.
6  * Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
7  * the U.S. Government retains certain rights in this software.
8  * For more information, see the LICENSE file in the top
9  * SST/macroscale directory.
10  */
11 
12 #ifndef SSTMAC_SOFTWARE_LIBRARIES_COMPUTE_LIB_COMPUTE_INST_H_INCLUDED
13 #define SSTMAC_SOFTWARE_LIBRARIES_COMPUTE_LIB_COMPUTE_INST_H_INCLUDED
14 
19 #include <stdint.h>
20 //these are the default instruction labels
21 
22 DeclareDebugSlot(lib_compute_inst);
23 
24 namespace sstmac {
25 namespace sw {
26 
28  public lib_compute
29 {
30  public:
32 
33  lib_compute_inst(const std::string& libname, software_id id);
34 
35  virtual
37 
38  void
40 
41  void
42  compute_detailed(uint64_t flops,
43  uint64_t nintops,
44  uint64_t bytes);
45 
46  void
47  compute_loop(uint64_t nloops,
48  uint32_t flops_per_loop,
49  uint32_t intops_per_loop,
50  uint32_t bytes_per_loop);
51 
52  virtual void
53  consume_params(sprockit::sim_parameters* params);
54 
55  void
58  }
59 
60  protected:
62 
63 };
64 
65 }
66 } //end of namespace sstmac
67 
68 #endif
69 
Input for processor models that use performance counter data.
Definition: compute_event.h:34
void compute_inst(compute_event *msg)
void compute_loop(uint64_t nloops, uint32_t flops_per_loop, uint32_t intops_per_loop, uint32_t bytes_per_loop)
virtual void consume_params(sprockit::sim_parameters *params)
DeclareDebugSlot(lib_compute_inst)
virtual void incoming_event(event *ev)=0
SUMI = Simulator unified messagine interface It is also the name for a solid ink in Japanese - i...
lib_compute_inst(software_id id)
void compute_detailed(uint64_t flops, uint64_t nintops, uint64_t bytes)
A wrapper for an appid, taskid pair.
Definition: software_id.h:28