Beispiel #1
0
int
result_method_file(xmlrpc_env *envP, xmlrpc_value *s, const char *member, const char *fname)
{
    if (s)
    {
        xmlrpc_value *file = NULL;
        xmlrpc_struct_find_value(envP, s, member, &file);
        if (file)
            return file_dump(envP, file, fname);
        else
            fprintf(stderr, "oracc-client: result_method_file: %s not found\n", member);
    }
    return 0;
}
static void tcbd_test_memory_io(struct tcbd_device *_device)
{
	s32 ret = 0;
	static u8 tmp_buffer[SIZE_TEST_BUFFER];

	memset(tmp_buffer, 0, SIZE_TEST_BUFFER);

	tcbd_change_memory_view(_device, EP_RAM0_RAM1);
	ret = tcbd_mem_write(_device,
			CODE_MEM_BASE, test_buffer, SIZE_TEST_BUFFER);
	if (ret < 0) {
		tcbd_debug(DEBUG_ERROR, "memory write failed %d\n", (int)ret);
		goto exit_test;
	}

	ret = tcbd_mem_read(_device,
			CODE_MEM_BASE, tmp_buffer, SIZE_TEST_BUFFER);
	if (ret < 0) {
		tcbd_debug(DEBUG_ERROR, "memory read failed %d\n", (int)ret);
		goto exit_test;
	}

#ifdef DEBUG_DUMP_FILE
	file_dump(test_buffer, SIZE_TEST_BUFFER, "/mnt/sdcard/tflash/org.bin");
	file_dump(tmp_buffer, SIZE_TEST_BUFFER, "/mnt/sdcard/tflash/read.bin");
#endif

	if (memcmp(tmp_buffer, test_buffer, SIZE_TEST_BUFFER))
		goto exit_test;

	tcbd_debug(DEBUG_ERROR, "Memory Read/Write test succeed!\n");
	return;

exit_test:
	tcbd_debug(DEBUG_ERROR, "Memory Read/Write test failed!\n");
}
Beispiel #3
0
float
jacobi(int nn)
{
  int i,j,k,n;
  float gosa,wgosa,s0,ss;
  double s, cpu, com;

  for(n=0 ; n<nn ; ++n){
    gosa = 0.0;
    wgosa= 0.0;
    //    if (id == 0)fprintf(stderr, "%d: nn:%d, imax:%d, jmax:%d, kmax:%d\n", n, nn, imax, jmax, kmax);
    //    if (id == 128)fprintf(stderr, "%d: nn:%d, imax:%d, jmax:%d, kmax:%d\n", n, nn, imax, jmax, kmax);
    s = MPI_Wtime();
    for(i=1 ; i<imax-1 ; ++i)
      for(j=1 ; j<jmax-1 ; ++j)
        for(k=1 ; k<kmax-1 ; ++k){
          s0 = a[0][i][j][k] * p[i+1][j  ][k  ]
             + a[1][i][j][k] * p[i  ][j+1][k  ]
             + a[2][i][j][k] * p[i  ][j  ][k+1]
             + b[0][i][j][k] * ( p[i+1][j+1][k  ] - p[i+1][j-1][k  ]
                               - p[i-1][j+1][k  ] + p[i-1][j-1][k  ] )
             + b[1][i][j][k] * ( p[i  ][j+1][k+1] - p[i  ][j-1][k+1]
                               - p[i  ][j+1][k-1] + p[i  ][j-1][k-1] )
             + b[2][i][j][k] * ( p[i+1][j  ][k+1] - p[i-1][j  ][k+1]
                               - p[i+1][j  ][k-1] + p[i-1][j  ][k-1] )
             + c[0][i][j][k] * p[i-1][j  ][k  ]
             + c[1][i][j][k] * p[i  ][j-1][k  ]
             + c[2][i][j][k] * p[i  ][j  ][k-1]
             + wrk1[i][j][k];

          ss = ( s0 * a[3][i][j][k] - p[i][j][k] ) * bnd[i][j][k];
          wgosa += ss*ss;

          wrk2[i][j][k] = p[i][j][k] + omega * ss;
        }

    for(i=1 ; i<imax-1 ; ++i)
      for(j=1 ; j<jmax-1 ; ++j)
        for(k=1 ; k<kmax-1 ; ++k)
          p[i][j][k] = wrk2[i][j][k];

    cpu = MPI_Wtime() - s;
    s = MPI_Wtime();
    sendp(ndx,ndy,ndz);
    com = MPI_Wtime() - s;
    s = MPI_Wtime();
    if (id == 0) {
      fprintf(stderr, "%d: time: %f cpu: %f com: %f nn:%d, imax:%d, jmax:%d, kmax:%d\n", cpu + com, cpu, com,  n, nn, imax, jmax, kmax);
    }
    //    if (n % 10 == 0 ) fprintf(stdout, "LLLL %d  %f\n", n, s);

#ifdef SCR_ENABLE
    int flag;
    char SCR_testFileName[SCR_MAX_FILENAME];
    char     testFileName[SCR_MAX_FILENAME];
    double gs, ge, start, end, dump, encoding;
    gs = start = MPI_Wtime();
    SCR_Need_checkpoint(&flag);
    if(flag){
      SCR_Start_checkpoint();
      sprintf(testFileName, "testfile.%d", id);
      strcpy(SCR_testFileName, testFileName);
      SCR_Route_file(testFileName, SCR_testFileName);
      if(id == 0)  printf(" ***** SCR_ROUTE_FILE %s\n", SCR_testFileName);
      file_dump(SCR_testFileName, p, MIMAX * MJMAX * MKMAX * sizeof(float));
      end = MPI_Wtime();
      dump = end - start;
      start = MPI_Wtime();
      SCR_Complete_checkpoint(1);
      ge = end = MPI_Wtime();
      encoding = end - start;
      //printf(" ***** SCR_START_CHECKPOINT\n");

      if (id == 0) fprintf(stderr, "time: %f (write: %f , enco:  %f)\n", ge - gs, dump, encoding);
    }


    // SCR

#endif
    MPI_Allreduce(&wgosa,
                  &gosa,
                  1,
                  MPI_FLOAT,
                  MPI_SUM,
                  MPI_COMM_WORLD);
  } /* end n loop */

  return(gosa);
}