void bli_trmm_thrinfo_free( trmm_thrinfo_t* thread) { if( thread == NULL ) return; // Free Communicators if( thread_am_ochief( thread ) ) bli_free_communicator( thread->ocomm ); if( thread->sub_trmm == NULL && thread_am_ichief( thread ) ) bli_free_communicator( thread->icomm ); // Free Sub Thrinfos bli_packm_thrinfo_free( thread->opackm ); bli_packm_thrinfo_free( thread->ipackm ); bli_trmm_thrinfo_free( thread->sub_trmm ); bli_free( thread ); return; }
void bli_gemm_thrinfo_free( gemm_thrinfo_t* thread) { if( thread == NULL || thread == &BLIS_GEMM_SINGLE_THREADED ) return; // Free Communicators if( thread_am_ochief( thread ) ) bli_free_communicator( thread->ocomm ); if( thread->sub_gemm == NULL && thread_am_ichief( thread ) ) bli_free_communicator( thread->icomm ); // Free Sub Thrinfos bli_packm_thrinfo_free( thread->opackm ); bli_packm_thrinfo_free( thread->ipackm ); bli_gemm_thrinfo_free( thread->sub_gemm ); bli_free_intl( thread ); return; }