From 63ab18006dfe2231a156d6a146faeb278d860083 Mon Sep 17 00:00:00 2001 From: egisz Date: Wed, 4 Aug 2021 09:15:13 +0300 Subject: [PATCH 1/5] detect CPU cores count and utilize while building project --- install.sh | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/install.sh b/install.sh index d8a5c649..a8ce8392 100755 --- a/install.sh +++ b/install.sh @@ -19,6 +19,7 @@ display_help() { #location of OS details for linux OS_RELEASE_FILE="/etc/os-release" +CPU_CORES_COUNT=`grep -c ^processor /proc/cpuinfo` #check if Raspian is in the file, if not set the install Args to be false if grep -q "Raspbian" ${OS_RELEASE_FILE}; then @@ -185,7 +186,7 @@ else cd build #beginning cmake - cmake -DCMAKE_BUILD_TYPE=Release ../ + cmake -DCMAKE_BUILD_TYPE=Release -- -j$CPU_CORES_COUNT ../ if [[ $? -eq 0 ]]; then echo -e Aasdk CMake completed successfully'\n' else @@ -194,7 +195,7 @@ else fi #beginning make - make -j2 + make -j$CPU_CORES_COUNT if [[ $? -eq 0 ]]; then echo -e Aasdk Make completed successfully '\n' @@ -260,7 +261,7 @@ if [ $gstreamer = true ]; then #run cmake echo Beginning cmake - cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH) -DCMAKE_INSTALL_INCLUDEDIR=include -DQT_VERSION=5 -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-std=c++11 + cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH) -DCMAKE_INSTALL_INCLUDEDIR=include -DQT_VERSION=5 -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-std=c++11 -- -j$CPU_CORES_COUNT if [[ $? -eq 0 ]]; then echo -e Make ok'\n' @@ -270,7 +271,7 @@ if [ $gstreamer = true ]; then fi echo Making Gstreamer - make -j4 + make -j$CPU_CORES_COUNT if [[ $? -eq 0 ]]; then echo -e Gstreamer make ok'\n' @@ -337,7 +338,7 @@ else cd build echo Beginning openauto cmake - cmake ${installArgs} -DGST_BUILD=true ../ + cmake ${installArgs} -DGST_BUILD=true -- -j$CPU_CORES_COUNT ../ if [[ $? -eq 0 ]]; then echo -e Openauto CMake OK'\n' else @@ -346,7 +347,7 @@ else fi echo Beginning openauto make - make + make -j$CPU_CORES_COUNT if [[ $? -eq 0 ]]; then echo -e Openauto make OK'\n' else @@ -386,7 +387,7 @@ else echo -e Installing dash'\n' echo Running CMake for dash - cmake ${installArgs} -DGST_BUILD=TRUE ../ + cmake ${installArgs} -DGST_BUILD=TRUE -- -j$CPU_CORES_COUNT ../ if [[ $? -eq 0 ]]; then echo -e Dash CMake OK'\n' else @@ -395,7 +396,7 @@ else fi echo Running Dash make - make + make -j$CPU_CORES_COUNT if [[ $? -eq 0 ]]; then echo -e Dash make ok, executable can be found ../bin/dash echo From e25e3aa17a00d7d7da610ad763e93e9bb3eb6de8 Mon Sep 17 00:00:00 2001 From: egisz Date: Wed, 4 Aug 2021 09:20:03 +0300 Subject: [PATCH 2/5] rename variable --- install.sh | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/install.sh b/install.sh index a8ce8392..3ef3a67d 100755 --- a/install.sh +++ b/install.sh @@ -19,7 +19,7 @@ display_help() { #location of OS details for linux OS_RELEASE_FILE="/etc/os-release" -CPU_CORES_COUNT=`grep -c ^processor /proc/cpuinfo` +CPU_CORE_COUNT=`grep -c ^processor /proc/cpuinfo` #check if Raspian is in the file, if not set the install Args to be false if grep -q "Raspbian" ${OS_RELEASE_FILE}; then @@ -186,7 +186,7 @@ else cd build #beginning cmake - cmake -DCMAKE_BUILD_TYPE=Release -- -j$CPU_CORES_COUNT ../ + cmake -DCMAKE_BUILD_TYPE=Release -- -j$CPU_CORE_COUNT ../ if [[ $? -eq 0 ]]; then echo -e Aasdk CMake completed successfully'\n' else @@ -195,7 +195,7 @@ else fi #beginning make - make -j$CPU_CORES_COUNT + make -j$CPU_CORE_COUNT if [[ $? -eq 0 ]]; then echo -e Aasdk Make completed successfully '\n' @@ -261,7 +261,7 @@ if [ $gstreamer = true ]; then #run cmake echo Beginning cmake - cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH) -DCMAKE_INSTALL_INCLUDEDIR=include -DQT_VERSION=5 -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-std=c++11 -- -j$CPU_CORES_COUNT + cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH) -DCMAKE_INSTALL_INCLUDEDIR=include -DQT_VERSION=5 -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-std=c++11 -- -j$CPU_CORE_COUNT if [[ $? -eq 0 ]]; then echo -e Make ok'\n' @@ -271,7 +271,7 @@ if [ $gstreamer = true ]; then fi echo Making Gstreamer - make -j$CPU_CORES_COUNT + make -j$CPU_CORE_COUNT if [[ $? -eq 0 ]]; then echo -e Gstreamer make ok'\n' @@ -338,7 +338,7 @@ else cd build echo Beginning openauto cmake - cmake ${installArgs} -DGST_BUILD=true -- -j$CPU_CORES_COUNT ../ + cmake ${installArgs} -DGST_BUILD=true -- -j$CPU_CORE_COUNT ../ if [[ $? -eq 0 ]]; then echo -e Openauto CMake OK'\n' else @@ -347,7 +347,7 @@ else fi echo Beginning openauto make - make -j$CPU_CORES_COUNT + make -j$CPU_CORE_COUNT if [[ $? -eq 0 ]]; then echo -e Openauto make OK'\n' else @@ -387,7 +387,7 @@ else echo -e Installing dash'\n' echo Running CMake for dash - cmake ${installArgs} -DGST_BUILD=TRUE -- -j$CPU_CORES_COUNT ../ + cmake ${installArgs} -DGST_BUILD=TRUE -- -j$CPU_CORE_COUNT ../ if [[ $? -eq 0 ]]; then echo -e Dash CMake OK'\n' else @@ -396,7 +396,7 @@ else fi echo Running Dash make - make -j$CPU_CORES_COUNT + make -j$CPU_CORE_COUNT if [[ $? -eq 0 ]]; then echo -e Dash make ok, executable can be found ../bin/dash echo From 0d631b4914f9e5ee554d122f7432d7a12acc094e Mon Sep 17 00:00:00 2001 From: egisz Date: Wed, 4 Aug 2021 11:50:15 +0300 Subject: [PATCH 3/5] check RAM size and limit to 2 threads if RAM < 4 GB --- install.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/install.sh b/install.sh index 3ef3a67d..f130be6a 100755 --- a/install.sh +++ b/install.sh @@ -20,6 +20,13 @@ display_help() { #location of OS details for linux OS_RELEASE_FILE="/etc/os-release" CPU_CORE_COUNT=`grep -c ^processor /proc/cpuinfo` +RAM_SIZE=`free -g | grep "Mem:" | awk '{print $2}'` + +if [[ $(($RAM_SIZE + 0)) -lt 4 ]]; then + CPU_CORE_COUNT=2 +fi +echo "RAM size is ${RAM_SIZE} GB, Utilizing threads: ${CPU_CORE_COUNT}" +exit 0 #check if Raspian is in the file, if not set the install Args to be false if grep -q "Raspbian" ${OS_RELEASE_FILE}; then From 13edebcd42accb449678ce723a639c20aac716cc Mon Sep 17 00:00:00 2001 From: egisz Date: Wed, 4 Aug 2021 11:55:23 +0300 Subject: [PATCH 4/5] remove exit cmd used for debugging --- install.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/install.sh b/install.sh index f130be6a..9e2acb97 100755 --- a/install.sh +++ b/install.sh @@ -26,7 +26,6 @@ if [[ $(($RAM_SIZE + 0)) -lt 4 ]]; then CPU_CORE_COUNT=2 fi echo "RAM size is ${RAM_SIZE} GB, Utilizing threads: ${CPU_CORE_COUNT}" -exit 0 #check if Raspian is in the file, if not set the install Args to be false if grep -q "Raspbian" ${OS_RELEASE_FILE}; then From 989216fedb4508e180a80e252b8510114a849b32 Mon Sep 17 00:00:00 2001 From: egisz Date: Thu, 5 Aug 2021 11:18:18 +0300 Subject: [PATCH 5/5] set threads to 1 if RAM < 2GB --- install.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/install.sh b/install.sh index 9e2acb97..81a68173 100755 --- a/install.sh +++ b/install.sh @@ -25,6 +25,9 @@ RAM_SIZE=`free -g | grep "Mem:" | awk '{print $2}'` if [[ $(($RAM_SIZE + 0)) -lt 4 ]]; then CPU_CORE_COUNT=2 fi +if [[ $(($RAM_SIZE + 0)) -lt 2 ]]; then + CPU_CORE_COUNT=1 +fi echo "RAM size is ${RAM_SIZE} GB, Utilizing threads: ${CPU_CORE_COUNT}" #check if Raspian is in the file, if not set the install Args to be false