Skip to content

Commit 2094483

Browse files
authored
Merge pull request #14 from koba-jon/develop/v1.9.1
Develop/v1.9.1
2 parents 690c1a7 + 64b5252 commit 2094483

File tree

57 files changed

+161
-119
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+161
-119
lines changed

Anomaly_Detection/AnoGAN2d/src/test.cpp

+4-2
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,8 @@ void test(po::variables_map &vm, torch::Device &device, GAN_Generator &gen, GAN_
5454
std::cout << "total test images : " << dataset.size() << std::endl << std::endl;
5555

5656
// (2) Get Model
57-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path);
58-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path);
57+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path, device);
58+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path, device);
5959

6060
// (3) Initialization of Value
6161
ave_anomaly_score = 0.0;
@@ -80,6 +80,7 @@ void test(po::variables_map &vm, torch::Device &device, GAN_Generator &gen, GAN_
8080
image = std::get<0>(data).to(device);
8181

8282
show_progress = new progress::display(/*count_max_=*/search_epoch, /*header1=*/std::get<1>(data).at(0), /*header2=*/"|", /*loss_=*/{"loss", "res", "dis"});
83+
torch::cuda::synchronize();
8384
start = std::chrono::system_clock::now();
8485

8586
for (size_t i = 0; i < search_epoch; i++){
@@ -99,6 +100,7 @@ void test(po::variables_map &vm, torch::Device &device, GAN_Generator &gen, GAN_
99100
res_loss = std::get<1>(anomaly_score_with_alpha);
100101
dis_loss = std::get<2>(anomaly_score_with_alpha);
101102

103+
torch::cuda::synchronize();
102104
end = std::chrono::system_clock::now();
103105
seconds = (double)std::chrono::duration_cast<std::chrono::microseconds>(end - start).count() * 0.001 * 0.001;
104106
delete show_progress;

Anomaly_Detection/AnoGAN2d/src/train.cpp

+4-4
Original file line numberDiff line numberDiff line change
@@ -119,10 +119,10 @@ void train(po::variables_map &vm, torch::Device &device, GAN_Generator &gen, GAN
119119
start_epoch = 0;
120120
}
121121
else{
122-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path);
123-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path);
124-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen_optimizer, path);
125-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis_optimizer, path);
122+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path, device);
123+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path, device);
124+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen_optimizer, path, device);
125+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis_optimizer, path, device);
126126
ofs.open(checkpoint_dir + "/log/train.txt", std::ios::app);
127127
ofs << std::endl << std::endl;
128128
if (vm["train_load_epoch"].as<std::string>() == "latest"){

Anomaly_Detection/DAGMM2d/src/test.cpp

+5-3
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,9 @@ void test(po::variables_map &vm, torch::Device &device, Encoder &enc, Decoder &d
5151

5252
// (2) Get Model
5353
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_gmp.dat"; load_params(path, mu, sigma, phi);
54-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc, path);
55-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec, path);
56-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_est.pth"; torch::load(est, path);
54+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc, path, device);
55+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec, path, device);
56+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_est.pth"; torch::load(est, path, device);
5757
mu = mu.to(device);
5858
sigma = sigma.to(device);
5959
phi = phi.to(device);
@@ -78,6 +78,7 @@ void test(po::variables_map &vm, torch::Device &device, Encoder &enc, Decoder &d
7878

7979
image = std::get<0>(data).to(device);
8080

81+
torch::cuda::synchronize();
8182
start = std::chrono::system_clock::now();
8283

8384
// (5.1) Encoder-Decoder Forward
@@ -99,6 +100,7 @@ void test(po::variables_map &vm, torch::Device &device, Encoder &enc, Decoder &d
99100
// (5.3) Calculation of Anomaly Score
100101
anomaly_score = est->anomaly_score(z, mu, sigma, phi);
101102

103+
torch::cuda::synchronize();
102104
end = std::chrono::system_clock::now();
103105
seconds = (double)std::chrono::duration_cast<std::chrono::microseconds>(end - start).count() * 0.001 * 0.001;
104106

Anomaly_Detection/DAGMM2d/src/train.cpp

+6-6
Original file line numberDiff line numberDiff line change
@@ -122,12 +122,12 @@ void train(po::variables_map &vm, torch::Device &device, Encoder &enc, Decoder &
122122
start_epoch = 0;
123123
}
124124
else{
125-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc, path);
126-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec, path);
127-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_est.pth"; torch::load(est, path);
128-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc_optimizer, path);
129-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec_optimizer, path);
130-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_est.pth"; torch::load(est_optimizer, path);
125+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc, path, device);
126+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec, path, device);
127+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_est.pth"; torch::load(est, path, device);
128+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc_optimizer, path, device);
129+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec_optimizer, path, device);
130+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_est.pth"; torch::load(est_optimizer, path, device);
131131
ofs.open(checkpoint_dir + "/log/train.txt", std::ios::app);
132132
ofs << std::endl << std::endl;
133133
if (vm["train_load_epoch"].as<std::string>() == "latest"){

Anomaly_Detection/EGBAD2d/src/test.cpp

+5-3
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,9 @@ void test(po::variables_map &vm, torch::Device &device, GAN_Encoder &enc, GAN_Ge
5151
std::cout << "total test images : " << dataset.size() << std::endl << std::endl;
5252

5353
// (2) Get Model
54-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc, path);
55-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path);
56-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path);
54+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc, path, device);
55+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path, device);
56+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path, device);
5757

5858
// (3) Initialization of Value
5959
ave_anomaly_score = 0.0;
@@ -72,6 +72,7 @@ void test(po::variables_map &vm, torch::Device &device, GAN_Encoder &enc, GAN_Ge
7272

7373
image = std::get<0>(data).to(device);
7474

75+
torch::cuda::synchronize();
7576
start = std::chrono::system_clock::now();
7677

7778
z = enc->forward(image);
@@ -81,6 +82,7 @@ void test(po::variables_map &vm, torch::Device &device, GAN_Encoder &enc, GAN_Ge
8182
res_loss = std::get<1>(anomaly_score_with_alpha);
8283
dis_loss = std::get<2>(anomaly_score_with_alpha);
8384

85+
torch::cuda::synchronize();
8486
end = std::chrono::system_clock::now();
8587
seconds = (double)std::chrono::duration_cast<std::chrono::microseconds>(end - start).count() * 0.001 * 0.001;
8688

Anomaly_Detection/EGBAD2d/src/train.cpp

+6-6
Original file line numberDiff line numberDiff line change
@@ -121,12 +121,12 @@ void train(po::variables_map &vm, torch::Device &device, GAN_Encoder &enc, GAN_G
121121
start_epoch = 0;
122122
}
123123
else{
124-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc, path);
125-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path);
126-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path);
127-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc_optimizer, path);
128-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen_optimizer, path);
129-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis_optimizer, path);
124+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc, path, device);
125+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path, device);
126+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path, device);
127+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc.pth"; torch::load(enc_optimizer, path, device);
128+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen_optimizer, path, device);
129+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis_optimizer, path, device);
130130
ofs.open(checkpoint_dir + "/log/train.txt", std::ios::app);
131131
ofs << std::endl << std::endl;
132132
if (vm["train_load_epoch"].as<std::string>() == "latest"){

Anomaly_Detection/GANomaly2d/src/test.cpp

+5-3
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,9 @@ void test(po::variables_map &vm, torch::Device &device, Encoder &enc1, Encoder &
4747
std::cout << "total test images : " << dataset.size() << std::endl << std::endl;
4848

4949
// (2) Get Model
50-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_enc1.pth"; torch::load(enc1, path);
51-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_enc2.pth"; torch::load(enc2, path);
52-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec, path);
50+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_enc1.pth"; torch::load(enc1, path, device);
51+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_enc2.pth"; torch::load(enc2, path, device);
52+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec, path, device);
5353

5454
// (3) Set Loss Function
5555
auto criterion_con = Loss(vm["loss_con"].as<std::string>());
@@ -72,6 +72,7 @@ void test(po::variables_map &vm, torch::Device &device, Encoder &enc1, Encoder &
7272

7373
image = std::get<0>(data).to(device);
7474

75+
torch::cuda::synchronize();
7576
start = std::chrono::system_clock::now();
7677

7778
z = enc1->forward(image);
@@ -81,6 +82,7 @@ void test(po::variables_map &vm, torch::Device &device, Encoder &enc1, Encoder &
8182
enc_loss = criterion_enc(z_rec, z) * vm["Lambda_enc"].as<float>();
8283
anomaly_score = torch::abs(z - z_rec).sum();
8384

85+
torch::cuda::synchronize();
8486
end = std::chrono::system_clock::now();
8587
seconds = (double)std::chrono::duration_cast<std::chrono::microseconds>(end - start).count() * 0.001 * 0.001;
8688

Anomaly_Detection/GANomaly2d/src/train.cpp

+8-8
Original file line numberDiff line numberDiff line change
@@ -130,14 +130,14 @@ void train(po::variables_map &vm, torch::Device &device, Encoder &enc1, Encoder
130130
start_epoch = 0;
131131
}
132132
else{
133-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc1.pth"; torch::load(enc1, path);
134-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc2.pth"; torch::load(enc2, path);
135-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec, path);
136-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path);
137-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc1.pth"; torch::load(enc1_optimizer, path);
138-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc2.pth"; torch::load(enc2_optimizer, path);
139-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec_optimizer, path);
140-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis_optimizer, path);
133+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc1.pth"; torch::load(enc1, path, device);
134+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc2.pth"; torch::load(enc2, path, device);
135+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec, path, device);
136+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path, device);
137+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc1.pth"; torch::load(enc1_optimizer, path, device);
138+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_enc2.pth"; torch::load(enc2_optimizer, path, device);
139+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dec.pth"; torch::load(dec_optimizer, path, device);
140+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis_optimizer, path, device);
141141
ofs.open(checkpoint_dir + "/log/train.txt", std::ios::app);
142142
ofs << std::endl << std::endl;
143143
if (vm["train_load_epoch"].as<std::string>() == "latest"){

Anomaly_Detection/Skip-GANomaly2d/src/test.cpp

+4-2
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,8 @@ void test(po::variables_map &vm, torch::Device &device, UNet_Generator &gen, GAN
5151
std::cout << "total test images : " << dataset.size() << std::endl << std::endl;
5252

5353
// (2) Get Model
54-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path);
55-
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path);
54+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path, device);
55+
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path, device);
5656

5757
// (3) Initialization of Value
5858
ave_anomaly_score = 0.0;
@@ -70,6 +70,7 @@ void test(po::variables_map &vm, torch::Device &device, UNet_Generator &gen, GAN
7070

7171
image = std::get<0>(data).to(device);
7272

73+
torch::cuda::synchronize();
7374
start = std::chrono::system_clock::now();
7475

7576
output = gen->forward(image);
@@ -78,6 +79,7 @@ void test(po::variables_map &vm, torch::Device &device, UNet_Generator &gen, GAN
7879
res_loss = std::get<1>(anomaly_score_with_alpha);
7980
dis_loss = std::get<2>(anomaly_score_with_alpha);
8081

82+
torch::cuda::synchronize();
8183
end = std::chrono::system_clock::now();
8284
seconds = (double)std::chrono::duration_cast<std::chrono::microseconds>(end - start).count() * 0.001 * 0.001;
8385

Anomaly_Detection/Skip-GANomaly2d/src/train.cpp

+4-4
Original file line numberDiff line numberDiff line change
@@ -127,10 +127,10 @@ void train(po::variables_map &vm, torch::Device &device, UNet_Generator &gen, GA
127127
start_epoch = 0;
128128
}
129129
else{
130-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path);
131-
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path);
132-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen_optimizer, path);
133-
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis_optimizer, path);
130+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen, path, device);
131+
path = checkpoint_dir + "/models/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis, path, device);
132+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_gen.pth"; torch::load(gen_optimizer, path, device);
133+
path = checkpoint_dir + "/optims/epoch_" + vm["train_load_epoch"].as<std::string>() + "_dis.pth"; torch::load(dis_optimizer, path, device);
134134
ofs.open(checkpoint_dir + "/log/train.txt", std::ios::app);
135135
ofs << std::endl << std::endl;
136136
if (vm["train_load_epoch"].as<std::string>() == "latest"){

Dimensionality_Reduction/AE1d/src/test.cpp

+3-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ void test(po::variables_map &vm, torch::Device &device, AutoEncoder1d &model, st
4646

4747
// (2) Get Model
4848
path = "checkpoints/" + vm["dataset"].as<std::string>() + "/models/epoch_" + vm["test_load_epoch"].as<std::string>() + ".pth";
49-
torch::load(model, path);
49+
torch::load(model, path, device);
5050

5151
// (3) Set Loss Function
5252
auto criterion = Loss(vm["loss"].as<std::string>());
@@ -65,10 +65,12 @@ void test(po::variables_map &vm, torch::Device &device, AutoEncoder1d &model, st
6565
dataI = std::get<0>(data).to(device);
6666
dataO = std::get<1>(data).to(device);
6767

68+
torch::cuda::synchronize();
6869
start = std::chrono::system_clock::now();
6970

7071
output = model->forward(dataI); // {1,D} ===> {1,D}
7172

73+
torch::cuda::synchronize();
7274
end = std::chrono::system_clock::now();
7375
seconds = (double)std::chrono::duration_cast<std::chrono::microseconds>(end - start).count() * 0.001 * 0.001;
7476

0 commit comments

Comments
 (0)