Esempio n. 1
0
def test_square(num=1, order=ORDER, order_of_block=ORDER_OF_BLOCK):
	total_time = 0
	for times in range(0,10):
		q = [Queue()]
		q_manager = Queue()
		for i in range(0, num):
			q.append(Queue())
		
		mat1 = np.random.rand(order, order)
		t0 = time.time()
	
		graph = p.dependency_graph(pow(2,num))
		Process(target=p.print_process, args=(graph, q_manager)).start()
		
		Process( target=p.matrix_to_queue, 
				 args=(q[0], mat1, order, order_of_block
				)).start()		
		for count in range(0, num):
			Process( target=p.square, args=(q[count], q[count+1], order, (q_manager, pow(2,count+1)), order_of_block)).start()
		mat2 = p.queue_to_matrix(q[num], order, order_of_block)
		
		t1 = time.time()
		total_time += t1 - t0

	print order, "\t", order_of_block, "\t\t", num, "\t", total_time/10
Esempio n. 2
0
def test_queue_to_matrix_and_reverse():
	mat1 = np.random.rand(ORDER, ORDER)
	# Test for Queue to matrix and matrix to queue
	#print type(mat1)
	q = Queue()
	t0 = time.clock()
	p.matrix_to_queue(q, mat1, ORDER)
	mat2 = p.queue_to_matrix(q, ORDER) 
	checker = True
	t1 = time.clock()
	print t1-t0
#	for r in range(0, ORDER):
#		for c in range(0, ORDER):
#			if mat1[r][c] != mat2[r][c]:
#				checker = False
#	print checker == True
	print (mat1==mat2).all()
	print time.clock() -  t1
Esempio n. 3
0
def test_square():
#	mat1 = np.arange(ORDER*ORDER).reshape(ORDER, ORDER)
	mat1 = np.random.rand(ORDER, ORDER)
#	mat2 = np.random.rand(ORDER, ORDER)
#	mat3 = np.dot(mat1, mat1)
	q1 = Queue()
	q2 = Queue()
	q3 = Queue()
	q4 = Queue()
	q5 = Queue()
	t0 = time.time()
	graph = p.dependency_graph(8)
	Process(target=p.print_process, args=(graph, q5)).start()
	Process(target=p.matrix_to_queue, args=(q1, mat1, ORDER, ORDER_OF_BLOCK)).start()
	Process(target=p.square, args=(q1, q2, ORDER, (q5, 2), ORDER_OF_BLOCK)).start()
	Process(target=p.square, args=(q2, q3, ORDER, (q5, 4), ORDER_OF_BLOCK)).start()
	Process(target=p.square(q3, q4, ORDER, (q5, 8), ORDER_OF_BLOCK)).start()
	mat2 = p.queue_to_matrix(q4, ORDER, ORDER_OF_BLOCK)
	t1 = time.time()
	print t1 - t0