include/deal.II/base/multithread_info.h

00001 //---------------------------------------------------------------------------
00002 //    @f$Id: multithread_info.h 25345 2012-03-31 08:37:04Z bangerth @f$
00003 //
00004 //    Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2010, 2012 by the deal.II authors
00005 //
00006 //    This file is subject to QPL and may not be  distributed
00007 //    without copyright and license information. Please refer
00008 //    to the file deal.II/doc/license.html for the  text  and
00009 //    further information on this license.
00010 //
00011 //---------------------------------------------------------------------------
00012 #ifndef __deal2__multithread_info_h
00013 #define __deal2__multithread_info_h
00014 //---------------------------------------------------------------------------
00015 
00016 
00017 #include <deal.II/base/config.h>
00018 #include <deal.II/base/exceptions.h>
00019 
00020 DEAL_II_NAMESPACE_OPEN
00021 
00040 class MultithreadInfo
00041 {
00042   public:
00055     MultithreadInfo ();
00056 
00070     const unsigned int n_cpus;
00071 
00080     unsigned int n_default_threads;
00081 
00098     static std::size_t memory_consumption ();
00099 
00103     DeclException0(ExcProcNotPresent);
00104 
00105   private:
00106 
00117     static unsigned int get_n_cpus();
00118 };
00119 
00120 
00121 
00129 extern MultithreadInfo multithread_info;
00130 
00131 
00132 
00133 
00134 //---------------------------------------------------------------------------
00135 DEAL_II_NAMESPACE_CLOSE
00136 // end of #ifndef __deal2__multithread_info_h
00137 #endif
00138 //---------------------------------------------------------------------------
00139 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

deal.II documentation generated on Tue May 22 2012 12:06:05 by doxygen 1.7.3