blob: da2c30443c4206f9eceb866eaa3b814765dd20d4 [file] [log] [blame] [edit]
# Copyright (c) Meta Platforms, Inc. and affiliates.
# All rights reserved.
#
# This source code is licensed under the BSD-style license found in the
# LICENSE file in the root directory of this source tree.
# pyre-strict
import logging
import platform
import torch
def is_fbcode() -> bool:
return not hasattr(torch.version, "git_version")
# Check if lowering for CoreML is supported on the current platform
def is_supported_platform_for_coreml_lowering() -> bool:
system = platform.system()
machine = platform.machine().lower()
# Check for Linux x86_64
if system == "Linux" and machine == "x86_64":
return True
# Check for macOS aarch64
if system == "Darwin" and machine in ("arm64", "aarch64"):
return True
logging.info(f"Unsupported platform: {system} {machine}")
return False
# Check if lowering for QNN is supported on the current platform
def is_supported_platform_for_qnn_lowering() -> bool:
system = platform.system()
machine = platform.machine().lower()
# Check for Linux x86_64
if platform.system().lower() == "linux" and platform.machine().lower() in (
"x86_64",
"amd64",
"i386",
"i686",
):
return True
logging.error(f"Unsupported platform for QNN lowering: {system} {machine}")
return False