update
This commit is contained in:
parent
a68778dd2e
commit
ef45071a38
@ -71,7 +71,7 @@ for n in n_array:
|
|||||||
start_time = time.time()
|
start_time = time.time()
|
||||||
det_A = np.linalg.det(A)
|
det_A = np.linalg.det(A)
|
||||||
det_time = time.time() - start_time
|
det_time = time.time() - start_time
|
||||||
print(f"矩阵行列式时间: {det_time:.2f} 秒")
|
print(f"矩阵行列式时间: {det_time:.3f} 秒")
|
||||||
|
|
||||||
# 矩阵乘法
|
# 矩阵乘法
|
||||||
start_time = time.time()
|
start_time = time.time()
|
||||||
|
@ -0,0 +1,11 @@
|
|||||||
|
import guan # https://py.guanjihuan.com | install: pip install --upgrade guan
|
||||||
|
import numpy as np
|
||||||
|
|
||||||
|
cpu_num_array = np.arange(1, 11)
|
||||||
|
|
||||||
|
sh_filename = 'task'
|
||||||
|
task_name = 'test'
|
||||||
|
py_filename='matrix_running_time_for_different_num_of_cpu_cores'
|
||||||
|
|
||||||
|
for cpu_num in cpu_num_array:
|
||||||
|
guan.make_sh_file_for_qsub(sh_filename=sh_filename+'_'+str(cpu_num), command_line=f'python {py_filename}.py', cpu_num=cpu_num, task_name=task_name+'_'+str(cpu_num), cd_dir=0)
|
@ -0,0 +1,47 @@
|
|||||||
|
"""
|
||||||
|
This code is supported by the website: https://www.guanjihuan.com
|
||||||
|
The newest version of this code is on the web page: https://www.guanjihuan.com/archives/45324
|
||||||
|
"""
|
||||||
|
|
||||||
|
import numpy as np
|
||||||
|
import time
|
||||||
|
|
||||||
|
n = 7000
|
||||||
|
A = np.random.rand(n, n)
|
||||||
|
B = np.random.rand(n, n)
|
||||||
|
|
||||||
|
# 矩阵行列式
|
||||||
|
start_time = time.time()
|
||||||
|
det_A = np.linalg.det(A)
|
||||||
|
det_time = time.time() - start_time
|
||||||
|
print(f"矩阵行列式时间: {det_time:.2f} 秒")
|
||||||
|
|
||||||
|
# 矩阵乘法
|
||||||
|
start_time = time.time()
|
||||||
|
C = np.dot(A, B)
|
||||||
|
multiply_time = time.time() - start_time
|
||||||
|
print(f"矩阵乘法时间: {multiply_time:.3f} 秒")
|
||||||
|
|
||||||
|
# 矩阵求逆
|
||||||
|
start_time = time.time()
|
||||||
|
inv_A = np.linalg.inv(A)
|
||||||
|
inv_time = time.time() - start_time
|
||||||
|
print(f"矩阵求逆时间: {inv_time:.3f} 秒")
|
||||||
|
|
||||||
|
# 矩阵的秩
|
||||||
|
start_time = time.time()
|
||||||
|
rank_A = np.linalg.matrix_rank(A)
|
||||||
|
rank_time = time.time() - start_time
|
||||||
|
print(f"矩阵的秩时间: {rank_time:.3f} 秒")
|
||||||
|
|
||||||
|
# 矩阵的特征值
|
||||||
|
start_time = time.time()
|
||||||
|
eigenvalues_A = np.linalg.eigvals(A)
|
||||||
|
eigen_time = time.time() - start_time
|
||||||
|
print(f"矩阵特征值时间: {eigen_time:.3f} 秒")
|
||||||
|
|
||||||
|
# 矩阵的特征值和特征向量
|
||||||
|
start_time = time.time()
|
||||||
|
eigenvalues_A, eigenvector_A = np.linalg.eig(A)
|
||||||
|
eigen_time = time.time() - start_time
|
||||||
|
print(f"矩阵特征值和特征向量时间: {eigen_time:.3f} 秒")
|
@ -0,0 +1,7 @@
|
|||||||
|
import numpy as np
|
||||||
|
import os
|
||||||
|
|
||||||
|
cpu_num_array = np.arange(1, 11)
|
||||||
|
|
||||||
|
for cpu_num in cpu_num_array:
|
||||||
|
os.system(f'qsub task_{cpu_num}.sh')
|
Loading…
x
Reference in New Issue
Block a user