Я пытаюсь использовать TPU на GCP с tenorflow 2.1 с Keras API. К сожалению, я застрял после создания узла tpu. Фактически, кажется, что моя виртуальная машина «видит» процессор, но не может подключиться к нему.
Код, который я использую:
resolver = tf.distribute.cluster_resolver.TPUClusterResolver(TPU_name)
print('Running on TPU ', resolver.master())
tf.config.experimental_connect_to_cluster(resolver)
tf.tpu.experimental.initialize_tpu_system(resolver)
strategy = tf.distribute.experimental.TPUStrategy(resolver)
Код застрял в строке 3, я получил несколько сообщений, а затем ничего, поэтому я не знаю, в чем может быть проблема. Поэтому я подозреваю, что существует какая-то проблема соединения между виртуальной машиной и TPU.
Сообщение:
2020-04-22 15: 46: 25.383775: I tenorflow / core / platform / cpu_feature_guard. cc: 142] Ваш ЦП поддерживает инструкции, которые этот двоичный файл TensorFlow не был скомпилирован для использования: SSE4.1 SSE4.2 AVX AVX2 FMA 2020-04-22 15: 46: 25.992977: I tenorflow / core / platform / profile_utils /cpu_utils.cc:94] Частота ЦП: 2300000000 Гц 2020-04-22 15: 46: 26.042269: I tenorflow / compiler / xla / service / service. cc: 168] Служба XLA 0x5636e4947610, инициализированная для хоста платформы ( это не гарантирует, что XLA будет использоваться). Устройства: 2020-04-22 15: 46: 26.042403: I tenorflow / compiler / xla / service / service. cc: 176] Устройство StreamExecutor (0): Хост, Версия по умолчанию 2020-04-22 15: 46: 26.080879 : I tenorflow / core / common_runtime / process_util. cc: 147] Создание нового пула потоков с настройкой взаимодействия по умолчанию: 2. Настройтесь с использованием inter_op_parallelism_threads для лучшей производительности. E0422 15: 46: 26.263937297 2263 socket_utils_common_posix. cc: 198] проверка для SO_REUSEPORT: {"созданный": "@ 1587570386.263923266", "description": "SO_REUSEPORT недоступен в системе компиляции", "file": "external / grpc src / core / lib / iomgr / socket_utils_common_posix. cc "," file_line ": 166} 2020-04-22 15: 46: 26.269134: I tenorflow / core / distrib_runtime / rpc / grpc_channel. cc: 300] Инициализировать GrpcChannelCache для рабочего задания -> {0 -> 10.163.38.90:8470} 2020-04-22 15: 46: 26.269192: I tenorflow / core / distrib_runtime / rpc / grpc_channel. cc: 300] Инициализация GrpcChannelCache для задания localhost - > {0 -> localhost: 32263}
Более того, я использую образ "Deep Learning" из gcp, поэтому мне не нужно ничего устанавливать, верно?
У кого-нибудь есть такая же проблема с TF 2.1? PS: один и тот же код отлично работает на Kaggle и Colab.