From e18e26e87c46806f75d219b21be8b6ff2228fc99 Mon Sep 17 00:00:00 2001 From: Dave Parks Date: Sun, 19 Sep 2010 23:07:56 -0500 Subject: Use tcmalloc for windows (gives auto-magical 16-byte alignment whenever needed, much faster than Visual C++ malloc). --- indra/cmake/00-Common.cmake | 2 +- indra/cmake/GooglePerfTools.cmake | 5 ++--- indra/newview/CMakeLists.txt | 6 ++---- install.xml | 8 ++++---- 4 files changed, 9 insertions(+), 12 deletions(-) diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index beb4f181b5..8b0864a539 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -38,7 +38,7 @@ if (WINDOWS) set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /Od /Zi /MDd /MP" CACHE STRING "C++ compiler debug options" FORCE) set(CMAKE_CXX_FLAGS_RELWITHDEBINFO - "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /Od /Zi /MD /MP /Gm /INCREMENTAL" + "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /Od /Zi /MD /MP /Gm" CACHE STRING "C++ compiler release-with-debug options" FORCE) set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /MD /MP" diff --git a/indra/cmake/GooglePerfTools.cmake b/indra/cmake/GooglePerfTools.cmake index 946fc6b375..ee231dcde6 100644 --- a/indra/cmake/GooglePerfTools.cmake +++ b/indra/cmake/GooglePerfTools.cmake @@ -6,7 +6,7 @@ if (STANDALONE) else (STANDALONE) use_prebuilt_binary(google) if (WINDOWS) - use_prebuilt_binary(google-perftools) + use_prebuilt_binary(tcmalloc) set(TCMALLOC_LIBRARIES debug libtcmalloc_minimal-debug optimized libtcmalloc_minimal) @@ -29,8 +29,7 @@ if (GOOGLE_PERFTOOLS_FOUND) endif (GOOGLE_PERFTOOLS_FOUND) if (WINDOWS) - # *TODO -reenable this once we get server usage sorted out - #set(USE_GOOGLE_PERFTOOLS ON) + set(USE_GOOGLE_PERFTOOLS ON) endif (WINDOWS) if (USE_GOOGLE_PERFTOOLS) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 73f752b218..0f2d461511 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1422,9 +1422,7 @@ if (WINDOWS) set_target_properties(${VIEWER_BINARY_NAME} PROPERTIES - # *TODO -reenable this once we get server usage sorted out - #LINK_FLAGS "/debug /NODEFAULTLIB:LIBCMT /SUBSYSTEM:WINDOWS /INCLUDE:\"__tcmalloc\"" - LINK_FLAGS "/debug /NODEFAULTLIB:LIBCMT /SUBSYSTEM:WINDOWS" + LINK_FLAGS "/debug /NODEFAULTLIB:LIBCMT /SUBSYSTEM:WINDOWS /INCLUDE:__tcmalloc" LINK_FLAGS_DEBUG "/NODEFAULTLIB:\"LIBCMT;LIBCMTD;MSVCRT\" /INCREMENTAL:NO" LINK_FLAGS_RELEASE ${release_flags} ) @@ -1640,6 +1638,7 @@ if (WINDOWS) endif (WINDOWS) target_link_libraries(${VIEWER_BINARY_NAME} + ${GOOGLE_PERFTOOLS_LIBRARIES} ${LLAUDIO_LIBRARIES} ${LLCHARACTER_LIBRARIES} ${LLIMAGE_LIBRARIES} @@ -1676,7 +1675,6 @@ target_link_libraries(${VIEWER_BINARY_NAME} ${OPENSSL_LIBRARIES} ${CRYPTO_LIBRARIES} ${LLLOGIN_LIBRARIES} - ${GOOGLE_PERFTOOLS_LIBRARIES} ${LLCONVEXDECOMP_LIBRARY} ) diff --git a/install.xml b/install.xml index 213f0ba2d2..48db054699 100644 --- a/install.xml +++ b/install.xml @@ -630,12 +630,12 @@ - google-perftools + tcmalloc copyright Copyright (c) 2005, Google Inc. description - Heap performance and validity checking tools from google. Includes TCMalloc, heap-checker, heap-profiler and cpu-profiler. + High performance memory allocator. license bsd packages @@ -643,9 +643,9 @@ windows md5sum - 32dba32ddd460a08e082898ebba6315c + 8b11a7d3caee8a4ba70da41d6a5ee131 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/google-perftools-1.0-windows-20090406.tar.bz2 + http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/tcmalloc-1.6-windows-20100916b.tar.bz2 -- cgit v1.2.3