Check the return value of pthread_create. Update the docs with known issue on Loongson 3A.
This commit is contained in:
parent
dc9c69db93
commit
3c856c0c1a
1
README
1
README
|
@ -72,6 +72,7 @@ Please see Changelog.txt to obtain the differences between GotoBLAS2 1.13 BSD ve
|
||||||
9.Known Issues
|
9.Known Issues
|
||||||
* The number of CPUs/Cores should less than or equal to 8*sizeof(unsigned long). On 64 bits, the limit
|
* The number of CPUs/Cores should less than or equal to 8*sizeof(unsigned long). On 64 bits, the limit
|
||||||
is 64. On 32 bits, it is 32.
|
is 64. On 32 bits, it is 32.
|
||||||
|
* On Loongson 3A. make test would be failed because of pthread_create error. The error code is EAGAIN. However, it will be OK when you run the same testcase on shell. I don't think this is a bug in OpenBLAS.
|
||||||
|
|
||||||
10. Specification of Git Branches
|
10. Specification of Git Branches
|
||||||
We used the git branching model in this article (http://nvie.com/posts/a-successful-git-branching-model/).
|
We used the git branching model in this article (http://nvie.com/posts/a-successful-git-branching-model/).
|
||||||
|
|
|
@ -500,6 +500,7 @@ static int blas_monitor(void *arg){
|
||||||
/* Initializing routine */
|
/* Initializing routine */
|
||||||
int blas_thread_init(void){
|
int blas_thread_init(void){
|
||||||
BLASLONG i;
|
BLASLONG i;
|
||||||
|
int ret;
|
||||||
#ifdef NEED_STACKATTR
|
#ifdef NEED_STACKATTR
|
||||||
pthread_attr_t attr;
|
pthread_attr_t attr;
|
||||||
#endif
|
#endif
|
||||||
|
@ -545,12 +546,16 @@ int blas_thread_init(void){
|
||||||
pthread_cond_init (&thread_status[i].wakeup, NULL);
|
pthread_cond_init (&thread_status[i].wakeup, NULL);
|
||||||
|
|
||||||
#ifdef NEED_STACKATTR
|
#ifdef NEED_STACKATTR
|
||||||
pthread_create(&blas_threads[i], &attr,
|
ret=pthread_create(&blas_threads[i], &attr,
|
||||||
(void *)&blas_thread_server, (void *)i);
|
(void *)&blas_thread_server, (void *)i);
|
||||||
#else
|
#else
|
||||||
pthread_create(&blas_threads[i], NULL,
|
ret=pthread_create(&blas_threads[i], NULL,
|
||||||
(void *)&blas_thread_server, (void *)i);
|
(void *)&blas_thread_server, (void *)i);
|
||||||
#endif
|
#endif
|
||||||
|
if(ret!=0){
|
||||||
|
fprintf(STDERR,"OpenBLAS: pthread_creat error in blas_thread_init function. Error code:%d\n",ret);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef MONITOR
|
#ifdef MONITOR
|
||||||
|
|
Loading…
Reference in New Issue