test: add comprehensive UDMA functionality tests Add unit tests and integration tests for UDMA functionality: Unit Tests (test_shmem_api): - API parameter validation - Uninitialized state handling - Full initialization flow - Multiple calls consistency - Device memory verification Integration Tests (test_tilexr_udma): - TileXR basic initialization - UDMA integration verification - Multi-rank coordination (MPI) - Shared memory buffers - Stress testing (multiple init/finalize cycles) Build System: - CMakeLists.txt with proper dependencies - build.sh for automated building - run_tests.sh for automated testing Documentation: - README.md: comprehensive testing guide - QUICKSTART.md: quick guide for AI agents - Detailed troubleshooting and expected results Tests cover single-process and multi-process scenarios, with graceful handling of missing MPI or insufficient NPUs. |