Pascal
4364bf7232
metal: support left and circular padding in GGML_OP_PAD ( #29561 )
...
* metal: support left and circular padding in GGML_OP_PAD
Align Metal with CPU, CUDA and Vulkan: shift the source coordinates by
the left paddings, wrap them around with the same wrap_around when
circular, and read the source through nb00, which also fixes a right
padding of a permuted source. A test case covers it.
Drop the f32_4 kernel: its selection is disabled as slower, and it
fails two pad cases once enabled.
* metal: use a function constant for the circular pad variant
Address review from ggerganov: replace the bool template with FC_PAD,
as FC_upscale_aa does, so the pad kernel is compiled once and
specialized per pipeline.
2026-09-28 12:26:50 +02:00
..
2026-09-19 13:14:44 +03:00
2026-09-20 06:51:40 -05:00
2026-09-13 18:50:46 +02:00
2026-09-11 12:41:54 +03:00
2026-09-28 10:24:21 +03:00
2026-05-26 19:05:48 +03:00
2026-04-02 22:53:58 +02:00
2026-08-30 11:34:20 +08:00
2026-08-27 13:53:42 +03:00
2026-07-30 19:34:04 +03:00
2026-09-28 12:26:50 +02:00
2026-08-11 07:21:32 +03:00
2025-12-10 12:32:23 -08:00
2026-09-24 16:25:07 +02:00
2025-07-03 07:48:32 +03:00
2026-08-23 18:38:51 +02:00
2026-08-23 18:38:51 +02:00
2026-09-20 06:51:40 -05:00
2026-08-23 18:38:51 +02:00
2026-09-22 09:38:52 +02:00
2026-06-09 12:01:37 +03:00
2024-07-12 10:46:02 +03:00
2026-07-14 13:15:41 +03:00
2026-09-11 12:41:54 +03:00
2025-04-24 16:00:10 +03:00
2026-04-02 22:53:58 +02:00
2026-09-17 09:19:44 +02:00
2026-09-12 16:14:50 -05:00
2025-12-22 11:00:37 +01:00
2026-08-05 07:39:10 -05:00
2026-09-27 13:41:50 +02:00
2026-09-19 14:11:13 +02:00
2026-09-12 16:14:50 -05:00
2026-09-24 08:57:31 +02:00
2026-03-21 18:43:35 +01:00
2026-04-29 10:58:43 +03:00
2025-12-10 15:28:59 +01:00
2026-07-30 19:34:04 +03:00
2026-08-22 16:28:28 +02:00
2026-09-02 21:20:10 +02:00
2026-09-25 18:52:44 +02:00
2025-08-26 22:14:38 +02:00
2026-03-06 21:01:00 +01:00
2026-09-13 18:50:46 +02:00
2026-09-12 02:19:37 +08:00
2025-09-25 08:06:06 +03:00
2026-08-12 14:15:03 +02:00
2026-07-25 11:58:09 +02:00
2026-09-28 10:24:21 +03:00
2025-11-11 13:33:24 +02:00
2026-09-25 10:35:09 +03:00
2026-08-30 20:26:16 +03:00
2026-07-30 19:34:04 +03:00
2026-09-08 12:59:53 +02:00
2026-09-28 10:24:21 +03:00
2026-09-28 10:24:21 +03:00
2026-06-25 09:22:51 +03:00
2026-09-26 08:38:57 +03:00
2025-12-22 11:00:37 +01:00
2026-04-09 12:36:29 +02:00
2026-02-26 12:14:09 +01:00
2025-12-22 11:00:37 +01:00
2025-12-22 11:00:37 +01:00
2026-04-09 12:36:29 +02:00
2025-09-27 02:03:33 +08:00
2026-08-18 15:15:22 +02:00
2026-08-16 12:45:33 +02:00