]> git.donarmstrong.com Git - rsem.git/blobdiff - Gibbs.cpp
rewrote parallelization of calcCI.cpp
[rsem.git] / Gibbs.cpp
index 1a084d6b2828731daefe71d8b591d686fa13c19c..f911da53c3e95370a224b95d64250abb3434bb7c 100644 (file)
--- a/Gibbs.cpp
+++ b/Gibbs.cpp
@@ -130,6 +130,7 @@ void load_data(char* reference_name, char* statName, char* imdName) {
 void init() {
        int quotient, left;
        char outF[STRLEN];
+       char splitF[STRLEN];
 
        quotient = NSAMPLES / nThreads;
        left = NSAMPLES % nThreads;
@@ -156,6 +157,14 @@ void init() {
                memset(paramsArray[i].pme_theta, 0, sizeof(double) * (M + 1));
        }
 
+       // output task splitting information
+       sprintf(splitF, "%s.split", imdName);
+       FILE *fo = fopen(splitF, "w");
+       fprintf(fo, "%d", nThreads);
+       for (int i = 0; i < nThreads; i++) fprintf(fo, " %d", paramsArray[i].nsamples);
+       fprintf(fo, "\n");
+       fclose(fo);
+
        /* set thread attribute to be joinable */
        pthread_attr_init(&attr);
        pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_JOINABLE);