HWTopo.h File Reference

Hardware topology and thread binding -*- C++ -*-. More...

Go to the source code of this file.

Namespaces

namespace  Galois
 

Main Galois namespace.


namespace  Galois::Runtime
 

Internal Galois functionality - Use at your own risk.


namespace  Galois::Runtime::LL
 

Low-level, Galois-agnostic functionality.


Functions

bool Galois::Runtime::LL::bindThreadToProcessor (int galois_thread_id)
 Bind thread specified by id to the correct OS thread.
unsigned Galois::Runtime::LL::getProcessorForThread (int galois_thread_id)
 Get physical processor id from virtual Galois thread id.
unsigned Galois::Runtime::LL::getMaxThreads ()
 Get number of threads supported.
unsigned Galois::Runtime::LL::getMaxCores ()
 Get number of cores supported.
unsigned Galois::Runtime::LL::getMaxPackages ()
 Get number of packages supported.
unsigned Galois::Runtime::LL::getPackageForThread (int galois_thread_id)
 Map thread to package.
unsigned Galois::Runtime::LL::getMaxPackageForThread (int galois_thread_id)
 Find the maximum package number for all threads up to and including id.
bool Galois::Runtime::LL::isPackageLeader (int galois_thread_id)
 is this the first thread in a package
unsigned Galois::Runtime::LL::getLeaderForThread (int galois_thread_id)
unsigned Galois::Runtime::LL::getLeaderForPackage (int galois_pkg_id)
static unsigned Galois::Runtime::LL::fillPackageID (int galois_thread_id)
static unsigned Galois::Runtime::LL::getPackageForSelf (int galois_thread_id)
 Optimized when galois_thread_id corresponds to the executing thread.
static bool Galois::Runtime::LL::isPackageLeaderForSelf (int galois_thread_id)
 Optimized when galois_thread_id corresponds to the executing thread.

Variables

__thread unsigned Galois::Runtime::LL::PACKAGE_ID = 0

Detailed Description

Hardware topology and thread binding -*- C++ -*-.

License

Galois, a framework to exploit amorphous data-parallelism in irregular programs.

Copyright (C) 2012, The University of Texas at Austin. All rights reserved. UNIVERSITY EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES CONCERNING THIS SOFTWARE AND DOCUMENTATION, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR ANY PARTICULAR PURPOSE, NON-INFRINGEMENT AND WARRANTIES OF PERFORMANCE, AND ANY WARRANTY THAT MIGHT OTHERWISE ARISE FROM COURSE OF DEALING OR USAGE OF TRADE. NO WARRANTY IS EITHER EXPRESS OR IMPLIED WITH RESPECT TO THE USE OF THE SOFTWARE OR DOCUMENTATION. Under no circumstances shall University be liable for incidental, special, indirect, direct or consequential damages or loss of profits, interruption of business, or related expenses which may arise from use of Software or Documentation, including but not limited to those resulting from defects in Software and/or Documentation, or loss or inaccuracy of data of any kind.

Description

Report HW topology and allow thread binding.

Author:
Andrew Lenharth <andrew@lenharth.org>

Generated on 2 Nov 2013 for Galois by  doxygen 1.6.1