From 7a448b718d58cece0384d540067d48bbe4a73774 Mon Sep 17 00:00:00 2001 From: Al Date: Wed, 5 Jul 2023 21:02:41 -0400 Subject: [PATCH] [crf] using 32 bytes for posix_memalign to align blocks of 4 doubles for remez algorithm to fix test which uses an odd-sized context --- src/crf_context.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/crf_context.c b/src/crf_context.c index 0f399a1a..e8635e28 100644 --- a/src/crf_context.c +++ b/src/crf_context.c @@ -41,7 +41,7 @@ crf_context_t *crf_context_new(int flag, size_t L, size_t T) { if (context->flag & CRF_CONTEXT_MARGINALS) { #if defined(INTEL_SSE) || defined(ARM_NEON) - context->exp_state = double_matrix_new_aligned(T, L, 16); + context->exp_state = double_matrix_new_aligned(T, L, 32); if (context->exp_state == NULL) goto exit_context_created; double_matrix_zero(context->exp_state); #else @@ -53,7 +53,7 @@ crf_context_t *crf_context_new(int flag, size_t L, size_t T) { if (context->mexp_state == NULL) goto exit_context_created; #if defined(INTEL_SSE) || defined(ARM_NEON) - context->exp_state_trans = double_matrix_new_aligned(T, L * L, 16); + context->exp_state_trans = double_matrix_new_aligned(T, L * L, 32); if (context->exp_state_trans == NULL) goto exit_context_created; double_matrix_zero(context->exp_state_trans); #else @@ -65,7 +65,7 @@ crf_context_t *crf_context_new(int flag, size_t L, size_t T) { if (context->mexp_state_trans == NULL) goto exit_context_created; #if defined(INTEL_SSE) || defined(ARM_NEON) - context->exp_trans = double_matrix_new_aligned(L, L, 16); + context->exp_trans = double_matrix_new_aligned(L, L, 32); if (context->exp_trans == NULL) goto exit_context_created; double_matrix_zero(context->exp_trans); #else @@ -131,13 +131,13 @@ bool crf_context_set_num_items(crf_context_t *self, size_t T) { if (self->flag & CRF_CONTEXT_MARGINALS && ( #if defined(INTEL_SSE) || defined(ARM_NEON) - !double_matrix_resize_aligned(self->exp_state, T, L, 16) || + !double_matrix_resize_aligned(self->exp_state, T, L, 32) || #else !double_matrix_resize(self->exp_state, T, L) || #endif !double_matrix_resize(self->mexp_state, T, L) || #if defined(INTEL_SSE) || defined(ARM_NEON) - !double_matrix_resize_aligned(self->exp_state_trans, T, L * L, 16) || + !double_matrix_resize_aligned(self->exp_state_trans, T, L * L, 32) || #else !double_matrix_resize(self->exp_state_trans, T, L * L) || #endif