void MICAcceleratorMatrixHYB<ValueType>::Clear() { if (this->get_nnz() > 0) { free_mic(this->local_backend_.MIC_dev, &this->mat_.COO.row); free_mic(this->local_backend_.MIC_dev, &this->mat_.COO.col); free_mic(this->local_backend_.MIC_dev, &this->mat_.COO.val); free_mic(this->local_backend_.MIC_dev, &this->mat_.ELL.val); free_mic(this->local_backend_.MIC_dev, &this->mat_.ELL.col); this->ell_nnz_ = 0; this->coo_nnz_ = 0; this->mat_.ELL.max_row = 0; this->nrow_ = 0; this->ncol_ = 0; this->nnz_ = 0; } }
void MICAcceleratorMatrixDIA<ValueType>::Clear() { if (this->get_nnz() > 0) { free_mic(&this->mat_.val); free_mic(&this->mat_.offset); this->nrow_ = 0; this->ncol_ = 0; this->nnz_ = 0; this->mat_.num_diag = 0 ; } }
void MICAcceleratorMatrixCOO<ValueType>::Clear() { if (this->get_nnz() > 0) { free_mic(this->local_backend_.MIC_dev, &this->mat_.row); free_mic(this->local_backend_.MIC_dev, &this->mat_.col); free_mic(this->local_backend_.MIC_dev, &this->mat_.val); this->nrow_ = 0; this->ncol_ = 0; this->nnz_ = 0; } }