コード例 #1
0
ファイル: unit_test_sorted.c プロジェクト: yifanwu/cs165db
void ut_sorted_bounds(int size)
{
  printf("Testing SORTED with BOUNDS.\n\n");
  char *name = "test_sorted_bounds";
  make_new_column_file(name, SORTED);
  column_t *c = malloc(sizeof(column_t));
  init_col(c, name);
  bv_t *bv = create_bv(size);

  int insert_index;

  for (int i = size-1; i>=0; i--) {
    insert_index = get_lower_bound(c->fp, c->m.size, i);
    insert_value_to_file(c, insert_index, i);
  }

  printf("Finished inserting data.\n");

#ifdef UT_VERBOSE
  print_data_file(c->bpt_fp);
#endif
  for (int i = 0; i < size; i++) {
    printf("Searching values at %d\n", i);
    mark_matching_bv_for_sorted(c, bv, i, i);
    assert(is_marked(bv, i));
    unmark_all_bv(bv);
  }
  return;
}
コード例 #2
0
ファイル: main.c プロジェクト: sakolkar/Matrix_Multiplier
void* threadfunc(void* arg_p) {
	long rank = (long) arg_p;

	int lower_bound_x = get_lower_bound(get_x(rank));
	int upper_bound_x = get_upper_bound(get_x(rank));
	int lower_bound_y = get_lower_bound(get_y(rank));
	int upper_bound_y = get_upper_bound(get_y(rank));

	int i = 0, j = 0, k = 0;
	for(i = lower_bound_x; i <= upper_bound_x; i++) { 
		for(j = lower_bound_y; j <= upper_bound_y; j++) { 
			matrix_c[i][j] = 0;
			for(k = 0; k < matrix_size; k++) {
				matrix_c[i][j] +=   matrix_a[i][k]
						  * matrix_b[k][j];
			}
		}
	}

	return NULL;
}
コード例 #3
0
ファイル: main.c プロジェクト: sakolkar/Matrix_Multiplier
int get_upper_bound(int coordinate) {
	// upper bound is 1 less than lower bound of higher coordinate
	return (int) get_lower_bound(coordinate+1) - 1;
}