Added the logging of signal interruptions.
[pysvrt.git] / cnn-svrt.py
index cb94184..ade87ce 100755 (executable)
 import time
 import argparse
 import math
+
 import distutils.util
 import re
+import signal
 
 from colorama import Fore, Back, Style
 
@@ -127,7 +129,24 @@ def log_string(s, remark = ''):
     log_file.write(re.sub(' ', '_', time.ctime()) + ' ' + elapsed + ' ' + s + '\n')
     log_file.flush()
 
-    print(Fore.BLUE + time.ctime() + ' ' + Fore.GREEN + elapsed + Style.RESET_ALL + ' ' + s + Fore.CYAN + remark + Style.RESET_ALL)
+    print(Fore.BLUE + time.ctime() + ' ' + Fore.GREEN + elapsed \
+          + Style.RESET_ALL
+          + ' ' \
+          + s + Fore.CYAN + remark \
+          + Style.RESET_ALL)
+
+######################################################################
+
+def handler_sigint(signum, frame):
+    log_string('got sigint')
+    exit(0)
+
+def handler_sigterm(signum, frame):
+    log_string('got sigterm')
+    exit(0)
+
+signal.signal(signal.SIGINT, handler_sigint)
+signal.signal(signal.SIGTERM, handler_sigterm)
 
 ######################################################################
 
@@ -268,17 +287,17 @@ class DeepNet3(nn.Module):
     name = 'deepnet3'
 
     def __init__(self):
-        super(DeepNet2, self).__init__()
+        super(DeepNet3, self).__init__()
         self.conv1 = nn.Conv2d(  1,  32, kernel_size=7, stride=4, padding=3)
-        self.conv2 = nn.Conv2d( 32, 256, kernel_size=5, padding=2)
-        self.conv3 = nn.Conv2d(256, 256, kernel_size=3, padding=1)
-        self.conv4 = nn.Conv2d(256, 256, kernel_size=3, padding=1)
-        self.conv5 = nn.Conv2d(256, 256, kernel_size=3, padding=1)
-        self.conv6 = nn.Conv2d(256, 256, kernel_size=3, padding=1)
-        self.conv7 = nn.Conv2d(256, 256, kernel_size=3, padding=1)
-        self.fc1 = nn.Linear(4096, 512)
-        self.fc2 = nn.Linear(512, 512)
-        self.fc3 = nn.Linear(512, 2)
+        self.conv2 = nn.Conv2d( 32, 128, kernel_size=5, padding=2)
+        self.conv3 = nn.Conv2d(128, 128, kernel_size=3, padding=1)
+        self.conv4 = nn.Conv2d(128, 128, kernel_size=3, padding=1)
+        self.conv5 = nn.Conv2d(128, 128, kernel_size=3, padding=1)
+        self.conv6 = nn.Conv2d(128, 128, kernel_size=3, padding=1)
+        self.conv7 = nn.Conv2d(128, 128, kernel_size=3, padding=1)
+        self.fc1 = nn.Linear(2048, 256)
+        self.fc2 = nn.Linear(256, 256)
+        self.fc3 = nn.Linear(256, 2)
 
     def forward(self, x):
         x = self.conv1(x)
@@ -305,7 +324,7 @@ class DeepNet3(nn.Module):
         x = self.conv7(x)
         x = fn.relu(x)
 
-        x = x.view(-1, 4096)
+        x = x.view(-1, 2048)
 
         x = self.fc1(x)
         x = fn.relu(x)