Ejemplo n.º 1
0
def Main():
    try:
        # Get application arguments
        ap = ArgumentParser(ArgumentsType.SERVER)

        # Get port number
        grpcServerPort = ap.GetGrpcServerPort()
        logger.info('gRPC server port: {0}'.format(grpcServerPort))

        # init graph topology & instance
        counter = 0
        while init_topology() == -1:
            if counter == 100:
               logger.critical('Failed to init topology, please check whether direct method still works')
               exit(-1)
            logger.warning('Failed to init topology, try again 10 secs later')
            time.sleep(10)
            counter += 1

        # create gRPC server and start running
        server = grpc.server(futures.ThreadPoolExecutor(max_workers=3))
        extension_pb2_grpc.add_MediaGraphExtensionServicer_to_server(
            InferenceEngine(stream_manager), server)
        server.add_insecure_port(f'[::]:{grpcServerPort}')
        server.start()
        app.run(host='0.0.0.0', debug=False)
        # server.wait_for_termination()

    except:
        PrintGetExceptionDetails()
        raise
Ejemplo n.º 2
0
def Main():
    try:
        # Get application arguments
        parser = argparse.ArgumentParser()
        parser.add_argument('-p', nargs=1, metavar=('grpc_server_port'),
                                        help='Port number to serve gRPC server.', default=5001)
        parser.add_argument('-b', nargs=1, metavar=('batch_size'),
                                        help='Batch size.', default=1)
    
        _arguments = parser.parse_args()

        # Default to port 5001
        grpcServerPort = _arguments.p

        # Default batch size 1
        batchSize = _arguments.b
        
        # Get port from environment variable (overrides argument)
        envPort = os.getenv('port')

        if(envPort is not None):
            grpcServerPort = envPort
       
        logging.info('gRPC server port with: {0}'.format(grpcServerPort))

        # create gRPC server and start running
        server = grpc.server(futures.ThreadPoolExecutor(max_workers=3))
        extension_pb2_grpc.add_MediaGraphExtensionServicer_to_server(InferenceServer(batchSize), server)
        server.add_insecure_port(f'[::]:{grpcServerPort}')
        server.start()
        server.wait_for_termination()

    except:
        PrintGetExceptionDetails()
        exit(-1)
Ejemplo n.º 3
0
def Main():
    try:
        # Get application arguments
        parser = argparse.ArgumentParser()
        parser.add_argument('-p',
                            nargs=1,
                            metavar=('grpc_server_port'),
                            help='Port number to serve gRPC server.')

        _arguments = parser.parse_args()

        grpcServerPort = 0
        # Get port number
        if (_arguments.p is not None):
            grpcServerPort = _arguments.p[0]
        else:
            raise Exception('gRPC server port is missing')

        logging.info('gRPC server port with: {0}'.format(grpcServerPort))

        # create gRPC server and start running
        server = grpc.server(futures.ThreadPoolExecutor(max_workers=3))
        extension_pb2_grpc.add_MediaGraphExtensionServicer_to_server(
            InferenceServer(), server)
        server.add_insecure_port(f'[::]:{grpcServerPort}')
        server.start()
        server.wait_for_termination()

    except:
        PrintGetExceptionDetails()
        exit(-1)
def main():
    """main.

    Main loop.
    """
    try:
        # Get application arguments
        argument_parser = ArgumentParser(ArgumentsType.SERVER)

        if IS_OPENCV == "false":
            # Get port number
            grpcServerPort = argument_parser.GetGrpcServerPort()
            logger.info("gRPC server port: %s", grpcServerPort)

            # init graph topology & instance
            counter = 0
            while init_topology() == -1:
                if counter == 100:
                    logger.critical(
                        "Failed to init topology, please check whether direct method still works"
                    )
                    sys.exit(-1)
                logger.warning(
                    "Failed to init topology, try again 10 secs later")
                time.sleep(10)
                counter += 1

            # create gRPC server and start running
            server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))
            extension_pb2_grpc.add_MediaGraphExtensionServicer_to_server(
                InferenceEngine(stream_manager), server
            )
            server.add_insecure_port(f"[::]:{grpcServerPort}")
            server.start()
        else:
            logger.info("opencv server")
            # opencv_zmq()
        uvicorn.run(app, host="0.0.0.0", port=5000)
        # server.wait_for_termination()

    except:
        PrintGetExceptionDetails()
        raise
Ejemplo n.º 5
0
def Main():
    try:
        # Get application arguments
        ap = ArgumentParser(ArgumentsType.SERVER)

        # Get port number
        grpcServerPort = ap.GetGrpcServerPort()
        logging.info('gRPC server port: {0}'.format(grpcServerPort))

        # create gRPC server and start running
        server = grpc.server(futures.ThreadPoolExecutor(max_workers=3))
        extension_pb2_grpc.add_MediaGraphExtensionServicer_to_server(
            InferenceEngine(), server)
        server.add_insecure_port(f'[::]:{grpcServerPort}')
        server.start()
        server.wait_for_termination()

    except:
        PrintGetExceptionDetails()
        exit(-1)
Ejemplo n.º 6
0
    parser.add_argument("--parameters", action="store",
                        dest="parameters",
                        type=str, default=os.getenv('PARAMETERS', '{}'))

    if (isinstance(args, dict)):
        args = ["--{}={}".format(key, value)
                for key, value in args.items() if value]

    return parser.parse_args(args)

if __name__ == "__main__":

    args = parse_args()
    try:
        VAServing.start({'log_level': 'INFO', "ignore_init_errors":True,
                         'max_running_pipelines': args.max_running_pipelines})

        # create gRPC server and start running
        server = grpc.server(futures.ThreadPoolExecutor(max_workers=args.max_running_pipelines))
        extension_pb2_grpc.add_MediaGraphExtensionServicer_to_server(
            MediaGraphExtension(args.pipeline, args.version, args.debug, args.parameters), server)
        server.add_insecure_port(f'[::]:{args.port}')
        print("Starting Protocol Server Application on port", args.port)
        server.start()
        server.wait_for_termination()
        VAServing.stop()

    except Exception:
        VAServing.stop()
        sys.exit(-1)
Ejemplo n.º 7
0
        if (
                (args.pipeline_name and not args.pipeline_version)
                or (not args.pipeline_name and args.pipeline_version)
        ):
            logger.error("Pipeline name or version set but not both")
            raise ValueError('Pipeline name or version set but not both')

        # create gRPC server and start running
        server = grpc.server(
            futures.ThreadPoolExecutor(max_workers=args.max_running_pipelines)
        )
        extension_pb2_grpc.add_MediaGraphExtensionServicer_to_server(
            MediaGraphExtension(
                args.pipeline_name,
                args.pipeline_version,
                args.debug,
            ),
            server,
        )
        server.add_insecure_port(f"[::]:{args.port}")
        logger.info("Starting %s on port: %d", PROGRAM_NAME, args.port)
        server.start()
        server.wait_for_termination()
        VAServing.stop()

    except Exception as error:
        logger.error(error)
        VAServing.stop()
        sys.exit(-1)