Change8

b8163

📦 llama-cppView on GitHub →
6 features🐛 4 fixes🔧 6 symbols

Summary

This release focuses heavily on improving the reliability and safety of the ggml-virtgpu backend through extensive consistency checks, error handling, and fallbacks for optional interface methods. It also includes various minor fixes and documentation updates.

Migration Steps

  1. If using optional GGML backend methods, ensure that the backend handles cases where `synchronize` or `get_alloc_size` might not be implemented, as the system now provides fallbacks/skips to prevent segfaults.

✨ New Features

  • Added consistency validation in ggml-virtgpu-backend to check received objects (pointers, sizes, offsets).
  • Added fallback/skips for optional GGML backend methods: bck->iface.synchronize(bck) and buft->iface.get_alloc_size(buft, op).
  • Added new error code handling and initialization in ggml-virtgpu-backend.
  • Added '[virtgpu]' prefix to device/buffer names.
  • Updated code generator to place dispatch_command_name in a host/guest shared file.
  • Implemented REMOTE_CALL to fail if the backend returns an error.

🐛 Bug Fixes

  • Fixed log format missing argument in ggml-virtgpu-backend.
  • Improved abort message in ggml-virtgpu-backend.
  • Improved error message for apir_device_buffer_from_ptr.
  • Turned off clang-format header ordering for some files where alphabetical ordering caused compilation breaks.

Affected Symbols