av_cpu_count: factorize "detected %d logical cores" message

Also print the message just once

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2013-05-26 02:18:38 +02:00
parent d480b36db4
commit 4cf7b87551
3 changed files with 7 additions and 2 deletions

View File

@ -790,7 +790,6 @@ static int frame_thread_init(AVCodecContext *avctx)
int nb_cpus = av_cpu_count();
if ((avctx->debug & (FF_DEBUG_VIS_QP | FF_DEBUG_VIS_MB_TYPE)) || avctx->debug_mv)
nb_cpus = 1;
av_log(avctx, AV_LOG_DEBUG, "detected %d logical cores\n", nb_cpus);
// use number of cores + 1 as thread count if there is more than one
if (nb_cpus > 1)
thread_count = avctx->thread_count = FFMIN(nb_cpus + 1, MAX_AUTO_THREADS);

View File

@ -150,7 +150,6 @@ static int thread_init(ThreadContext *c, int nb_threads)
if (!nb_threads) {
int nb_cpus = av_cpu_count();
av_log(c->graph, AV_LOG_DEBUG, "Detected %d logical cores.\n", nb_cpus);
// use number of cores + 1 as thread count if there is more than one
if (nb_cpus > 1)
nb_threads = nb_cpus + 1;

View File

@ -198,6 +198,8 @@ int av_parse_cpu_caps(unsigned *flags, const char *s)
int av_cpu_count(void)
{
static volatile int printed;
int ret, nb_cpus = 1;
#if HAVE_SCHED_GETAFFINITY && defined(CPU_COUNT)
cpu_set_t cpuset;
@ -226,6 +228,11 @@ int av_cpu_count(void)
nb_cpus = sysconf(_SC_NPROCESSORS_ONLN);
#endif
if (!printed) {
av_log(NULL, AV_LOG_DEBUG, "detected %d logical cores\n", nb_cpus);
printed = 1;
}
return nb_cpus;
}