From acac588d58cdc7e3ad78c76a1fddffe12ed0b869 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Sat, 28 Aug 2010 13:15:38 +0000 Subject: [PATCH] re-enaqble async rendering. seems ok on 2 cores. might be a quad-core issue and arm issue. need to check again monday. SVN revision: 51696 --- legacy/evas/README.in | 2 +- legacy/evas/configure.ac | 64 +++++++++++++++++++--------------------- 2 files changed, 31 insertions(+), 35 deletions(-) diff --git a/legacy/evas/README.in b/legacy/evas/README.in index 3248371889..95f3a13e74 100644 --- a/legacy/evas/README.in +++ b/legacy/evas/README.in @@ -560,7 +560,7 @@ if you ask it to, and provide events when done. this goes hand-in-hand with --enable-pthreads and --enable-async-events. you really want all of these available. ---enable-async-render **DISABLED DUE TO BUGS** +--enable-async-render **CAUTION - MAY NOT WORK RIGHT** this enables a software multi-frame threaded renderer. this will allocate (for example) 2 frames to 2 cores, with one core of the cpu diff --git a/legacy/evas/configure.ac b/legacy/evas/configure.ac index 24d48b0895..9160f60827 100644 --- a/legacy/evas/configure.ac +++ b/legacy/evas/configure.ac @@ -842,39 +842,35 @@ dnl fi ####################################### ## Async Renderer build_async_render="no" -dnl -dnl ... DISABLED! some testing has shown that this seems to have some -dnl nasty bugs on both x86 and arm (tegra2 dual core tested), so just -dnl disabling this for now until it can be fixed -dnl -dnl AC_MSG_CHECKING(whether to build Asynchronously Threaded Pipe Rendering support) -dnl AC_ARG_ENABLE(async-render, -dnl AC_HELP_STRING([--enable-async-render], [enable asynchronously threaded pipe rendering support]), -dnl [ build_async_render=$enableval ] -dnl ) -dnl AC_MSG_RESULT($build_async_render) -dnl -dnl AC_MSG_CHECKING(whether we can build Asynchronously Threaded Pipe Rendering support) -dnl if test \( "x$build_async_render" = "xyes" \); then -dnl AC_MSG_RESULT(yes) -dnl AC_DEFINE(EVAS_FRAME_QUEUING, 1, [Build async render support]) -dnl build_async_render="yes" -dnl AC_DEFINE(BUILD_PIPE_RENDER, 1, [Build pipe render support]) -dnl build_pipe_render="yes" -dnl need_pthreads="yes" -dnl -dnl PKG_CHECK_MODULES([XEXT], -dnl [xext < 1.1.1], -dnl [ build_avoid_libXext_bug=yes ], -dnl [ build_avoid_libXext_bug=no ] -dnl ) -dnl if test \( "x$build_avoid_libXext_bug" = "xyes" \); then -dnl AC_DEFINE(LIBXEXT_VERSION_LOW, 1, [To avoid bug on old libXext version]) -dnl fi -dnl else -dnl AC_MSG_RESULT(no) -dnl build_async_render="no" -dnl fi + +AC_MSG_CHECKING(whether to build Asynchronously Threaded Pipe Rendering support) +AC_ARG_ENABLE(async-render, + AC_HELP_STRING([--enable-async-render], [enable asynchronously threaded pipe rendering support]), + [ build_async_render=$enableval ] +) +AC_MSG_RESULT($build_async_render) + +AC_MSG_CHECKING(whether we can build Asynchronously Threaded Pipe Rendering support) +if test \( "x$build_async_render" = "xyes" \); then + AC_MSG_RESULT(yes) + AC_DEFINE(EVAS_FRAME_QUEUING, 1, [Build async render support]) + build_async_render="yes" + AC_DEFINE(BUILD_PIPE_RENDER, 1, [Build pipe render support]) + build_pipe_render="yes" + need_pthreads="yes" + + PKG_CHECK_MODULES([XEXT], + [xext < 1.1.1], + [ build_avoid_libXext_bug=yes ], + [ build_avoid_libXext_bug=no ] + ) + if test \( "x$build_avoid_libXext_bug" = "xyes" \); then + AC_DEFINE(LIBXEXT_VERSION_LOW, 1, [To avoid bug on old libXext version]) + fi +else + AC_MSG_RESULT(no) + build_async_render="no" +fi ####################################### ## Async events @@ -1636,7 +1632,7 @@ dnl nasty bugs on both x86 and arm (tegra2 dual core tested), so just dnl disabling this for now until it can be fixed dnl dnl echo " Threaded Pipe Rendering.: $build_pipe_render" -dnl echo " Async Pipe Rendering....: $build_async_render" +echo " Async Pipe Rendering....: $build_async_render" echo " Async Events............: $build_async_events" echo " Async Image Preload.....: $build_async_preload" echo