YUNTA88's picture
Upload root_scripts/diag_abi.sh with huggingface_hub
9bbaaf8 verified
python3 << 'PYEOF'
import torch
print(f"torch version: {torch.__version__}")
print(f"CXX11_ABI: {torch._C._GLIBCXX_USE_CXX11_ABI}")
# Check what symbols torch provides
import subprocess
# Check the symbol in torch
result = subprocess.run(
["nm", "-D", torch.__file__.replace("__init__.py", "_C.cpython-311-x86_64-linux-gnu.so")],
capture_output=True, text=True
)
# Look for c10_cuda_check
matches = [l for l in result.stdout.split("\n") if "c10_cuda_check" in l]
print(f"torch c10_cuda_check symbols: {len(matches)}")
for m in matches[:5]:
print(f" {m}")
# Check flash_attn .so
import os
so_path = "/opt/conda/lib/python3.11/site-packages/flash_attn_2_cuda.cpython-311-x86_64-linux-gnu.so"
if os.path.exists(so_path):
result2 = subprocess.run(["nm", "-D", so_path], capture_output=True, text=True)
undef = [l for l in result2.stdout.split("\n") if "c10_cuda_check" in l]
print(f"\nflash_attn .so c10_cuda_check symbols: {len(undef)}")
for m in undef[:5]:
print(f" {m}")
# Check CXX11 ABI indicator in the .so
abi_check = subprocess.run(["strings", so_path], capture_output=True, text=True)
# Look for ABI tag
for line in abi_check.stdout.split("\n"):
if "cxx11abi" in line.lower() or "GLIBCXX" in line:
print(f"SO ABI marker: {line}")
PYEOF