Example #1
0
int main(int argc, char *argv[])
{
      int x = argc;
      int aX[300000];
      int bX[300000];
      int i;
      
      printf("starting program\n");
      Extrae_init();
      
//       for (i=0; i<1; ++i) {
	  #pragma omp task inout (aX)
	  some_work(aX, 'a');
	  
	  #pragma omp task inout (bX)
	  some_work(bX, 'b');
//       }
      
      Extrae_fini();
      return 0;
}
Example #2
0
int main(int argc, char *argv[])
{
      int x = argc;
      int X[300000];
      int a,b,c,d,e,f,g,h;
      int i;
      
      printf("starting program\n");
      Extrae_init();
      
      for (i=0; i<3; ++i) {
	  #pragma omp task out (b,c) inout(a)
	  some_work(X, '1');
	  
	  #pragma omp task inout (b,c)
	  some_work(X, '2');
	  
	  #pragma omp task inout (b,c) out (a,d)
	  some_work(X, '3');
	  
	  #pragma omp task in (d)
	  some_work(X, '4');
	  
	  #pragma omp task in (d)
	  some_work(X, '5');
	  
	  #pragma omp task inout (a) in(d)
	  some_work(X, '6');
      }
      
      Extrae_fini();
      return 0;
}
Example #3
0
int main(int argc, char *argv[])
{
      int x = argc;
      int X[100000];
      
      int a, b, c, d, e, f, g;
      
      printf("starting program\n");
      Extrae_init();

#pragma omp task inout(X)
      {
          some_work(X, 'a');
      }
      
#pragma omp task inout(X)
      {
          some_work(X, 'b');
      }
      
#pragma omp task inout(X)
      {
          some_work(X, 'c');
      }    
      
#pragma omp task inout(X)
      {
          some_work(X, 'd');
      }
      
#pragma omp task inout(X)
      {
          some_work(X, 'e');
      }
      
#pragma omp task inout(X)
      {
          some_work(X, 'f');
      }
      
#pragma omp task inout(X)
      {
          some_work(X, 'g');
      }
      Extrae_fini();
#pragma omp taskwait
      return 0;
}
const unsigned long long int tissuestack::database::TissueStackPostgresConnector::executeTransaction(const std::vector<std::string> sql)
{
    std::lock_guard<std::mutex> lock(this->_transactionMutex);

    try
    {
        if (sql.empty()) return 0;

        if (this->_trans_connection == nullptr)
            THROW_TS_EXCEPTION(tissuestack::common::TissueStackApplicationException,
                               "Reconnecting database ...");

        unsigned long long int affectedRows = 0;

        pqxx::work some_work(*this->_trans_connection);

        pqxx::result result;
        for (auto s : sql)
        {
            //tissuestack::logging::TissueStackLogger::instance()->debug("Executing SQL: %s", s.c_str());
            result = some_work.exec(s);
            affectedRows += result.affected_rows();
        }
        some_work.commit();

        return affectedRows;
    } catch (std::exception & bad)
    {
        tissuestack::logging::TissueStackLogger::instance()->error("Failed to execute query: %s\n", bad.what());
        try
        {
            if (this->_trans_connection)
            {
                this->_trans_connection->activate();
                THROW_TS_EXCEPTION(tissuestack::common::TissueStackApplicationException,
                                   "Reconnecting database ...");
            }

        } catch (...) {}
        throw tissuestack::common::TissueStackApplicationException(
            "ERROR: Failure to execute database query: " + std::string(bad.what()));
    }
}