@@ -409,286 +409,6 @@ static const struct ggml_type_traits_cpu type_traits_cpu[GGML_TYPE_COUNT] = {
409409 .vec_dot_type = GGML_TYPE_BF16 ,
410410 .nrows = 1 ,
411411 },
412-
413- // IKL
414- [GGML_TYPE_BF16_R16 ] = {
415- .from_float = (ggml_from_float_t ) ggml_fp32_to_bf16_row ,
416- .vec_dot = (ggml_vec_dot_t ) ggml_vec_dot_bf16 ,
417- .vec_dot_type = GGML_TYPE_BF16 ,
418- .nrows = 1 ,
419- },
420- /* [GGML_TYPE_Q4_0_4_4] = {
421- .type_name = "q4_0_4x4",
422- .blck_size = QK4_0,
423- .blck_size_interleave = 4,
424- .type_size = sizeof(block_q4_0),
425- .is_quantized = true,
426- .to_float = NULL,
427- .from_float = NULL,
428- .from_float_ref = NULL,
429- .vec_dot = NULL,
430- .vec_dot_type = GGML_TYPE_Q8_0,
431- .nrows = 1,
432- .ncols = 4,
433- .gemv = ggml_gemv_q4_0_4x4_q8_0,
434- .gemm = ggml_gemm_q4_0_4x4_q8_0,
435- .row_meta_size = 0,
436- },
437- [GGML_TYPE_Q4_0_4_8] = {
438- .type_name = "q4_0_4x8",
439- .blck_size = QK4_0,
440- .blck_size_interleave = 8,
441- .type_size = sizeof(block_q4_0),
442- .is_quantized = true,
443- .to_float = NULL,
444- .from_float = NULL,
445- .from_float_ref = NULL,
446- .vec_dot = NULL,
447- .vec_dot_type = GGML_TYPE_Q8_0,
448- .nrows = 1,
449- .ncols = 4,
450- .gemv = ggml_gemv_q4_0_4x8_q8_0,
451- .gemm = ggml_gemm_q4_0_4x8_q8_0,
452- .row_meta_size = 0,
453- },
454- [GGML_TYPE_Q4_0_8_8] = {
455- .type_name = "q4_0_8x8",
456- .blck_size = QK4_0,
457- .blck_size_interleave = 8,
458- .type_size = sizeof(block_q4_0),
459- .is_quantized = true,
460- .to_float = NULL,
461- .from_float = NULL,
462- .from_float_ref = NULL,
463- .vec_dot = NULL,
464- .vec_dot_type = GGML_TYPE_Q8_0,
465- .nrows = 1,
466- .ncols = 8,
467- .gemv = ggml_gemv_q4_0_8x8_q8_0,
468- .gemm = ggml_gemm_q4_0_8x8_q8_0,
469- .row_meta_size = 0,
470- }, */
471- [GGML_TYPE_IQ2_K ] = {
472- .from_float = quantize_row_iq2_k ,
473- .vec_dot = vec_dot_iq2_k_q8_k ,
474- .vec_dot_type = GGML_TYPE_Q8_K ,
475- .nrows = 1 ,
476- },
477- [GGML_TYPE_IQ2_K_R4 ] = {
478- .from_float = quantize_row_iq2_k_r4 ,
479- .vec_dot = vec_dot_iq2_k_r4_q8_k ,
480- .vec_dot_type = GGML_TYPE_Q8_K ,
481- .nrows = 1 ,
482- },
483- [GGML_TYPE_IQ2_KS ] = {
484- .from_float = quantize_row_iq2_ks ,
485- .vec_dot = vec_dot_iq2_ks_q8_k ,
486- .vec_dot_type = GGML_TYPE_Q8_K ,
487- .nrows = 1 ,
488- },
489- [GGML_TYPE_IQ1_KT ] = {
490- .from_float = quantize_row_iq1_kt ,
491- .vec_dot = vec_dot_iq1_kt_q8_k ,
492- #if defined __AVX2__
493- .vec_dot_type = GGML_TYPE_Q8_2_X4 ,
494- #else
495- .vec_dot_type = GGML_TYPE_Q8_0_X4 ,
496- #endif
497- .nrows = 1 ,
498- },
499- [GGML_TYPE_IQ2_KT ] = {
500- .from_float = quantize_row_iq2_kt ,
501- .vec_dot = vec_dot_iq2_kt_q8_k ,
502- #if defined __AVX2__
503- .vec_dot_type = GGML_TYPE_Q8_2_X4 ,
504- #else
505- .vec_dot_type = GGML_TYPE_Q8_0_X4 ,
506- #endif
507- //#ifdef __ARM_NEON
508- // .vec_dot_type = GGML_TYPE_F16,
509- //#else
510- // .vec_dot_type = GGML_TYPE_F32,
511- //#endif
512- .nrows = 1 ,
513- },
514- [GGML_TYPE_IQ3_KT ] = {
515- .from_float = quantize_row_iq3_kt ,
516- .vec_dot = vec_dot_iq3_kt_q8_k ,
517- #if defined __AVX2__
518- .vec_dot_type = GGML_TYPE_Q8_2_X4 ,
519- #else
520- .vec_dot_type = GGML_TYPE_Q8_0_X4 ,
521- #endif
522- //#ifdef __ARM_NEON
523- // .vec_dot_type = GGML_TYPE_F16,
524- //#else
525- // .vec_dot_type = GGML_TYPE_F32,
526- //#endif
527- .nrows = 1 ,
528- },
529- [GGML_TYPE_IQ4_KT ] = {
530- .from_float = quantize_row_iq4_kt ,
531- .vec_dot = vec_dot_iq4_kt_q8_k ,
532- #if defined __AVX2__
533- .vec_dot_type = GGML_TYPE_Q8_2_X4 ,
534- #else
535- .vec_dot_type = GGML_TYPE_Q8_0_X4 ,
536- #endif
537- // #ifdef __ARM_NEON
538- // .vec_dot_type = GGML_TYPE_F16,
539- // #else
540- // .vec_dot_type = GGML_TYPE_F32,
541- // #endif
542- .nrows = 1 ,
543- },
544- [GGML_TYPE_IQ3_K ] = {
545- .from_float = quantize_row_iq3_k ,
546- .vec_dot = vec_dot_iq3_k_q8_k ,
547- .vec_dot_type = GGML_TYPE_Q8_K ,
548- .nrows = 1 ,
549- },
550- [GGML_TYPE_IQ3_KS_V1 ] = {
551- .from_float = quantize_row_iq3_ks_v1 ,
552- .vec_dot = vec_dot_iq3_ks_v1_q8_k ,
553- .vec_dot_type = GGML_TYPE_Q8_K ,
554- .nrows = 1 ,
555- },
556- [GGML_TYPE_IQ3_KS ] = {
557- .from_float = quantize_row_iq3_ks ,
558- .vec_dot = vec_dot_iq3_ks_q8_k ,
559- .vec_dot_type = GGML_TYPE_Q8_K ,
560- .nrows = 1 ,
561- },
562- [GGML_TYPE_IQ2_KL ] = {
563- .from_float = quantize_row_iq2_kl ,
564- .vec_dot = vec_dot_iq2_kl_q8_k ,
565- .vec_dot_type = GGML_TYPE_Q8_K ,
566- .nrows = 1 ,
567- },
568- [GGML_TYPE_IQ4_K ] = {
569- .from_float = quantize_row_iq4_k ,
570- .vec_dot = vec_dot_iq4_k_q8_k ,
571- .vec_dot_type = GGML_TYPE_Q8_K ,
572- .nrows = 1 ,
573- },
574- [GGML_TYPE_IQ4_K_R4 ] = {
575- .from_float = quantize_row_iq4_k_r4 ,
576- .vec_dot = vec_dot_iq4_k_r4_q8_k ,
577- .vec_dot_type = GGML_TYPE_Q8_K ,
578- .nrows = 1 ,
579- },
580- [GGML_TYPE_IQ3_K_R4 ] = {
581- .from_float = quantize_row_iq3_k_r4 ,
582- .vec_dot = vec_dot_iq3_k_r4_q8_k ,
583- .vec_dot_type = GGML_TYPE_Q8_K ,
584- .nrows = 1 ,
585- },
586- [GGML_TYPE_IQ5_K ] = {
587- .from_float = quantize_row_iq5_k ,
588- .vec_dot = vec_dot_iq5_k_q8_k ,
589- // #ifdef __AVX2__
590- // .vec_dot_type = GGML_TYPE_Q8_2_X4,
591- // #else
592- .vec_dot_type = GGML_TYPE_Q8_K ,
593- // #endif
594- .nrows = 1 ,
595- },
596- [GGML_TYPE_IQ5_K_R4 ] = {
597- .from_float = quantize_row_iq5_k_r4 ,
598- .vec_dot = vec_dot_iq5_k_r4_q8_k ,
599- .vec_dot_type = GGML_TYPE_Q8_K ,
600- .nrows = 1 ,
601- },
602- [GGML_TYPE_IQ6_K ] = {
603- .from_float = quantize_row_iq6_k ,
604- .vec_dot = vec_dot_iq6_k_q8_k ,
605- .vec_dot_type = GGML_TYPE_Q8_K ,
606- .nrows = 1 ,
607- },
608- [GGML_TYPE_IQ4_NL_R4 ] = {
609- .from_float = quantize_row_iq4_nl_r4 ,
610- .vec_dot = vec_dot_iq4_nl_r4_q8_0 ,
611- #ifdef GGML_USE_IQK_MULMAT
612- #if defined __AVX2__
613- .vec_dot_type = GGML_TYPE_Q8_2_X4 ,
614- #else
615- .vec_dot_type = GGML_TYPE_Q8_0_X4 ,
616- #endif
617- #else
618- .vec_dot_type = GGML_TYPE_Q8_0 ,
619- #endif
620- .nrows = 1 ,
621- },
622- [GGML_TYPE_IQ4_XS_R8 ] = {
623- .from_float = quantize_row_iq4_xs_r8 ,
624- .vec_dot = vec_dot_iq4_xs_r8_q8_k ,
625- .vec_dot_type = GGML_TYPE_Q8_K32 ,
626- .nrows = 1 ,
627- },
628- [GGML_TYPE_Q4_0_R8 ] = {
629- .from_float = quantize_row_q4_0_r8 ,
630- .vec_dot = vec_dot_q4_0_r8_q8_0 ,
631- #ifdef GGML_USE_IQK_MULMAT
632- #if defined __AVX2__
633- .vec_dot_type = GGML_TYPE_Q8_2_X4 ,
634- #else
635- .vec_dot_type = GGML_TYPE_Q8_0_X4 ,
636- #endif
637- #else
638- .vec_dot_type = GGML_TYPE_Q8_0 ,
639- #endif
640- .nrows = 1 ,
641- },
642- [GGML_TYPE_Q8_0_R8 ] = {
643- .from_float = quantize_row_q8_0_r8 ,
644- .vec_dot = vec_dot_q8_0_r8_q8_0 ,
645- #ifdef GGML_USE_IQK_MULMAT
646- #if defined __AVX2__
647- .vec_dot_type = GGML_TYPE_Q8_2_X4 ,
648- #else
649- .vec_dot_type = GGML_TYPE_Q8_0_X4 ,
650- #endif
651- #else
652- .vec_dot_type = GGML_TYPE_Q8_0 ,
653- #endif
654- .nrows = 1 ,
655- },
656- [GGML_TYPE_Q5_0_R4 ] = {
657- .from_float = quantize_row_q5_0_r4 ,
658- .vec_dot = vec_dot_q5_0_r4_q8_0 ,
659- #ifdef GGML_USE_IQK_MULMAT
660- #if defined __AVX2__
661- .vec_dot_type = GGML_TYPE_Q8_2_X4 ,
662- #else
663- .vec_dot_type = GGML_TYPE_Q8_0_X4 ,
664- #endif
665- #else
666- .vec_dot_type = GGML_TYPE_Q8_0 ,
667- #endif
668- .nrows = 1 ,
669- },
670- [GGML_TYPE_Q6_0_R4 ] = {
671- .from_float = quantize_row_q6_0_r4 ,
672- .vec_dot = vec_dot_q6_0_r4_q8_0 ,
673- #ifdef GGML_USE_IQK_MULMAT
674- #if defined __AVX2__
675- .vec_dot_type = GGML_TYPE_Q8_2_X4 ,
676- #else
677- .vec_dot_type = GGML_TYPE_Q8_0_X4 ,
678- #endif
679- #else
680- .vec_dot_type = GGML_TYPE_Q8_0 ,
681- #endif
682- .nrows = 1 ,
683- },
684- [GGML_TYPE_I2_S ] = {
685- .from_float = NULL ,
686- .vec_dot = NULL ,
687- .vec_dot_type = GGML_TYPE_Q8_0 ,
688- .nrows = 1 ,
689- },
690-
691- // LCPP AGAIN
692412 [GGML_TYPE_TQ1_0 ] = {
693413 .from_float = quantize_row_tq1_0 ,
694414 .vec_dot = ggml_vec_dot_tq1_0_q8_K ,
0 commit comments