Skip to content

Commit 6f98112

Browse files
authored
check gpu (PaddlePaddle#2743)
1 parent 5d5a28d commit 6f98112

File tree

4 files changed

+24
-3
lines changed

4 files changed

+24
-3
lines changed

PaddleCV/image_classification/eval.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import reader_cv2 as reader
3030
import models
3131
from utils.learning_rate import cosine_decay
32-
from utils.utility import add_arguments, print_arguments
32+
from utils.utility import add_arguments, print_arguments, check_gpu
3333

3434
parser = argparse.ArgumentParser(description=__doc__)
3535
add_arg = functools.partial(add_arguments, argparser=parser)
@@ -134,6 +134,7 @@ def eval(args):
134134
def main():
135135
args = parser.parse_args()
136136
print_arguments(args)
137+
check_gpu(args.use_gpu)
137138
eval(args)
138139

139140

PaddleCV/image_classification/infer.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
import reader_cv2 as reader
3030
import models
3131
import utils
32-
from utils.utility import add_arguments,print_arguments
32+
from utils.utility import add_arguments,print_arguments, check_gpu
3333

3434
parser = argparse.ArgumentParser(description=__doc__)
3535
# yapf: disable
@@ -108,6 +108,7 @@ def infer(args):
108108
def main():
109109
args = parser.parse_args()
110110
print_arguments(args)
111+
check_gpu(args.use_gpu)
111112
infer(args)
112113

113114

PaddleCV/image_classification/train.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ def set_paddle_flags(flags):
4747
import utils
4848
import models
4949
from utils.fp16_utils import create_master_params_grads, master_param_to_train_param
50-
from utils.utility import add_arguments, print_arguments
50+
from utils.utility import add_arguments, print_arguments, check_gpu
5151
from utils.learning_rate import cosine_decay_with_warmup
5252
from dist_train import dist_utils
5353

@@ -612,6 +612,7 @@ def if_exist(var):
612612
def main():
613613
args = parser.parse_args()
614614
print_arguments(args)
615+
check_gpu(args.use_gpu)
615616
train(args)
616617

617618

PaddleCV/image_classification/utils/utility.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,3 +60,21 @@ def add_arguments(argname, type, default, help, argparser, **kwargs):
6060
type=type,
6161
help=help + ' Default: %(default)s.',
6262
**kwargs)
63+
64+
def check_gpu(use_gpu):
65+
"""
66+
Log error and exit when set use_gpu=true in paddlepaddle
67+
cpu version.
68+
"""
69+
err = "Config use_gpu cannot be set as true while you are " \
70+
"using paddlepaddle cpu version ! \nPlease try: \n" \
71+
"\t1. Install paddlepaddle-gpu to run model on GPU \n" \
72+
"\t2. Set use_gpu as false in config file to run " \
73+
"model on CPU"
74+
75+
try:
76+
if use_gpu and not fluid.is_compiled_with_cuda():
77+
logger.error(err)
78+
sys.exit(1)
79+
except Exception as e:
80+
pass

0 commit comments

Comments
 (0)