Commit f1fb64de authored by Mathieu Faverge's avatar Mathieu Faverge
Browse files

Add the 4 factorization algorithms

parent ed2b7472
/**
*
* @file sequential_zgetrf.c
*
* PaStiX factorization routines
* PaStiX is a software package provided by Inria Bordeaux - Sud-Ouest,
* LaBRI, University of Bordeaux 1 and IPB.
*
* @version 5.1.0
* @author Pascal Henon
* @author Xavier Lacoste
* @author Pierre Ramet
* @author Mathieu Faverge
* @date 2013-06-24
*
* @precisions normal z -> s d c
*
**/
#include "common.h"
#include "sopalin_data.h"
#include "pastix_zcores.h"
void
pastix_static_zgetrf( sopalin_data_t *sopalin_data )
{
SolverMatrix *datacode = sopalin_data->solvmtx;
SolverCblk *cblk;
pastix_int_t i, ii;
pastix_int_t tasknbr, *tasktab;
Task *t;
FILE *stream = fopen("facto.txt", "w");
tasknbr = datacode->ttsknbr[0];
tasktab = datacode->ttsktab[0];
for (ii=0; ii<tasknbr; ii++){
i = tasktab[ii];
t = datacode->tasktab + i;
cblk = datacode->cblktab + t->cblknum;
/* Compute task */
switch( t->taskid )
{
case COMP_1D:
/* Compute */
core_zgetrfsp1d( datacode, cblk, sopalin_data->diagthreshold );
break;
default:
errorPrint("Taskid unknown for task %ld\n", (long)i);
EXIT(MOD_SOPALIN,INTERNAL_ERR);
}
}
fclose(stream);
}
/**
*
* @file sequential_zhetrf.c
*
* PaStiX factorization routines
* PaStiX is a software package provided by Inria Bordeaux - Sud-Ouest,
* LaBRI, University of Bordeaux 1 and IPB.
*
* @version 5.1.0
* @author Pascal Henon
* @author Xavier Lacoste
* @author Pierre Ramet
* @author Mathieu Faverge
* @date 2013-06-24
*
* @precisions normal z -> c
*
**/
#include "common.h"
#include "sopalin_data.h"
#include "pastix_zcores.h"
void
pastix_static_zhetrf( sopalin_data_t *sopalin_data )
{
SolverMatrix *datacode = sopalin_data->solvmtx;
SolverCblk *cblk;
pastix_int_t i, ii;
pastix_int_t tasknbr, *tasktab;
Task *t;
FILE *stream = fopen("facto.txt", "w");
tasknbr = datacode->ttsknbr[0];
tasktab = datacode->ttsktab[0];
for (ii=0; ii<tasknbr; ii++){
i = tasktab[ii];
t = datacode->tasktab + i;
cblk = datacode->cblktab + t->cblknum;
/* Compute task */
switch( t->taskid )
{
case COMP_1D:
/* Compute */
core_zhetrfsp1d( datacode, cblk, sopalin_data->diagthreshold );
break;
default:
errorPrint("Taskid unknown for task %ld\n", (long)i);
EXIT(MOD_SOPALIN,INTERNAL_ERR);
}
}
fclose(stream);
}
......@@ -18,14 +18,7 @@
**/
#include "common.h"
#include "sopalin_data.h"
void
coeftab_zdumpcblk( const SolverCblk *cblk,
FILE *stream );
int
core_zpotrfsp1d( SolverMatrix *solvmtx,
SolverCblk *cblk,
double criteria );
#include "pastix_zcores.h"
void
pastix_static_zpotrf( sopalin_data_t *sopalin_data )
......@@ -64,10 +57,10 @@ pastix_static_zpotrf( sopalin_data_t *sopalin_data )
/* /\* stolen ); *\/ */
/* Compute */
core_zpotrfsp1d( datacode, cblk, 0.002397);
fprintf(stream, "i=%ld, task=%ld, cblk=%ld\n",
(long)ii, (long)i, (long)t->cblknum);
coeftab_zdumpcblk( cblk, stream );
core_zpotrfsp1d( datacode, cblk, sopalin_data->diagthreshold);
/* fprintf(stream, "i=%ld, task=%ld, cblk=%ld\n", */
/* (long)ii, (long)i, (long)t->cblknum); */
/* coeftab_zdumpcblk( cblk, stream ); */
break;
default:
......
/**
*
* @file sequential_zsytrf.c
*
* PaStiX factorization routines
* PaStiX is a software package provided by Inria Bordeaux - Sud-Ouest,
* LaBRI, University of Bordeaux 1 and IPB.
*
* @version 5.1.0
* @author Pascal Henon
* @author Xavier Lacoste
* @author Pierre Ramet
* @author Mathieu Faverge
* @date 2013-06-24
*
* @precisions normal z -> s d c
*
**/
#include "common.h"
#include "sopalin_data.h"
#include "pastix_zcores.h"
void
pastix_static_zsytrf( sopalin_data_t *sopalin_data )
{
SolverMatrix *datacode = sopalin_data->solvmtx;
SolverCblk *cblk;
pastix_int_t i, ii;
pastix_int_t tasknbr, *tasktab;
Task *t;
FILE *stream = fopen("facto.txt", "w");
tasknbr = datacode->ttsknbr[0];
tasktab = datacode->ttsktab[0];
for (ii=0; ii<tasknbr; ii++){
i = tasktab[ii];
t = datacode->tasktab + i;
cblk = datacode->cblktab + t->cblknum;
/* Compute task */
switch( t->taskid )
{
case COMP_1D:
/* Compute */
core_zsytrfsp1d( datacode, cblk, sopalin_data->diagthreshold );
break;
default:
errorPrint("Taskid unknown for task %ld\n", (long)i);
EXIT(MOD_SOPALIN,INTERNAL_ERR);
}
}
fclose(stream);
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment