16 Star 43 Fork 5

Gitee 极速下载/deeplearning4j

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/eclipse/deeplearning4j
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

Deeplearning4j Troubleshooting Documentation

This directory contains comprehensive guides for debugging and troubleshooting libnd4j, particularly focusing on crashes, hangs, and build-related issues.

Available Documentation

1. Build Debugging Flags (README.md)

Covers the core debugging build flags for libnd4j including:

  • libnd4j.calltrace for function call tracing
  • libnd4j.printmath for debugging numerical operations
  • libnd4j.printindices for array bounds checking
  • Build configuration examples and usage scenarios

2. Process Hang Troubleshooting (TROUBLESHOOTING_HANGS.md)

Comprehensive guide for debugging hanging Java processes, including:

  • Using GDB with ptrace and direct process attachment
  • Valgrind integration with test suite
  • Address Sanitizer (ASAN) configuration and usage
  • CUDA Compute Sanitizer for GPU code
  • Best practices and common issues

3. Preprocessor Debugging (PREPROCESSOR_DEBUGGING.md)

Detailed guide for using the preprocessor debugging capabilities:

  • Using libnd4j.preprocess flag
  • Understanding preprocessor output
  • Debugging macro expansions
  • Troubleshooting include paths and dependencies
  • Tips for handling large codebases

Quick Start

For Build Issues:

# Enable all debugging flags
mvn -Dlibnd4j.calltrace=ON -Dlibnd4j.printmath=ON -Dlibnd4j.printindices=ON clean install

For Process Hangs:

# Attach to hanging process
sudo gdb -p <process-id>
thread apply all bt

For Macro Issues:

# Generate preprocessor output
mvn clean install -Dlibnd4j.preprocess=ON

Common Use Cases

  1. Debugging Crashes

    • Start with build flags from README.md
    • Use generated debug information with GDB
  2. Investigating Hangs

    • Follow TROUBLESHOOTING_HANGS.md
    • Use appropriate tool based on symptom (GDB, Valgrind, ASAN)
  3. Build/Macro Problems

    • Use PREPROCESSOR_DEBUGGING.md
    • Examine preprocessor output for issues

Contributing

When adding new troubleshooting documentation:

  1. Create a focused markdown file for the specific topic
  2. Update this README.md with a summary
  3. Include practical examples and command-line instructions
  4. Add cross-references to related documentation
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/mirrors/deeplearning4j.git
git@gitee.com:mirrors/deeplearning4j.git
mirrors
deeplearning4j
deeplearning4j
master

搜索帮助