From 0f40e8d6a63656fbdbb3a31f91c0eb7c1168d2a8 Mon Sep 17 00:00:00 2001 From: thomwolf Date: Wed, 19 Jun 2019 15:38:46 +0200 Subject: [PATCH] debugger --- examples/bertology.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/examples/bertology.py b/examples/bertology.py index af7e661a52..7efdfa459a 100644 --- a/examples/bertology.py +++ b/examples/bertology.py @@ -122,8 +122,17 @@ def run_model(): parser.add_argument("--seed", type=int, default=42) parser.add_argument("--local_rank", type=int, default=-1, help="local_rank for distributed training on gpus") parser.add_argument("--no_cuda", action='store_true', help="Whether not to use CUDA when available") + parser.add_argument('--server_ip', type=str, default='', help="Can be used for distant debugging.") + parser.add_argument('--server_port', type=str, default='', help="Can be used for distant debugging.") args = parser.parse_args() + if args.server_ip and args.server_port: + # Distant debugging - see https://code.visualstudio.com/docs/python/debugging#_attach-to-a-local-script + import ptvsd + print("Waiting for debugger attach") + ptvsd.enable_attach(address=(args.server_ip, args.server_port), redirect_output=True) + ptvsd.wait_for_attach() + # Setup devices and distributed training if args.local_rank == -1 or args.no_cuda: args.device = torch.device("cuda" if torch.cuda.is_available() and not args.no_cuda else "cpu")