コード例 #1
0
ファイル: partdiff-par.c プロジェクト: arnef/hlr
/* ************************************************************************ */
int
main (int argc, char** argv)
{
	struct options options;
	struct mpi_options mpi_options;
	struct calculation_arguments arguments;
	struct calculation_results results;
	
	initMpi(&mpi_options, &argc, &argv);
	/* get parameters */
	AskParams(&options, argc, argv, mpi_options.mpi_rank == 0);              /* ************************* */

	initVariables(&arguments, &results, &options, &mpi_options);           /* ******************************************* */
	allocateMatrices(&arguments);        /*  get and initialize variables and matrices  */
	initMatrices(&arguments, &options);            /* ******************************************* */

	gettimeofday(&start_time, NULL);                   /*  start timer         */
	calculate(&arguments, &results, &options, &mpi_options);                                      /*  solve the equation  */
	gettimeofday(&comp_time, NULL);                   /*  stop timer          */

	if(mpi_options.mpi_rank == 0) displayStatistics(&arguments, &results, &options);
	DisplayMatrix(&arguments, &results, &options, mpi_options.mpi_rank, mpi_options.mpi_size, arguments.row_start, arguments.row_end);

	freeMatrices(&arguments);                                       /*  free memory     */

	MPI_Finalize();
	return 0;
}
コード例 #2
0
ファイル: Tpetra_Core.cpp プロジェクト: cihanuq/Trilinos
  void initialize (int* argc, char*** argv)
  {
    if (! tpetraIsInitialized_) {
#ifdef HAVE_TPETRACORE_MPI
      initMpi (argc, argv); // initialize MPI, if needed
#endif // HAVE_TPETRACORE_MPI
      initKokkos (argc, argv); // initialize Kokkos, if needed
    }
    tpetraIsInitialized_ = true;
  }