You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							60 lines
						
					
					
						
							2.4 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							60 lines
						
					
					
						
							2.4 KiB
						
					
					
				
								#!/bin/sh
							 | 
						|
								#
							 | 
						|
								# Copyright 2005-2013 Intel Corporation.  All Rights Reserved.
							 | 
						|
								#
							 | 
						|
								# This file is part of Threading Building Blocks.
							 | 
						|
								#
							 | 
						|
								# Threading Building Blocks is free software; you can redistribute it
							 | 
						|
								# and/or modify it under the terms of the GNU General Public License
							 | 
						|
								# version 2 as published by the Free Software Foundation.
							 | 
						|
								#
							 | 
						|
								# Threading Building Blocks is distributed in the hope that it will be
							 | 
						|
								# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
							 | 
						|
								# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
							 | 
						|
								# GNU General Public License for more details.
							 | 
						|
								#
							 | 
						|
								# You should have received a copy of the GNU General Public License
							 | 
						|
								# along with Threading Building Blocks; if not, write to the Free Software
							 | 
						|
								# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
							 | 
						|
								#
							 | 
						|
								# As a special exception, you may use this file as part of a free software
							 | 
						|
								# library without restriction.  Specifically, if other files instantiate
							 | 
						|
								# templates or use macros or inline functions from this file, or you compile
							 | 
						|
								# this file and link it with other files to produce an executable, this
							 | 
						|
								# file does not by itself cause the resulting executable to be covered by
							 | 
						|
								# the GNU General Public License.  This exception does not however
							 | 
						|
								# invalidate any other reasons why the executable file might be covered by
							 | 
						|
								# the GNU General Public License.
							 | 
						|
								
							 | 
						|
								while getopts  "ul:" flag #
							 | 
						|
								do case $flag in #
							 | 
						|
								    l )  if [ `uname` != 'Linux' ] ; then #
							 | 
						|
								             echo 'skip' #
							 | 
						|
								             exit #
							 | 
						|
								         fi #
							 | 
						|
								         LD_PRELOAD=$OPTARG ;; #
							 | 
						|
								    u )  # Set stack limit
							 | 
						|
								         ulimit -s 10240 ;; # 
							 | 
						|
								esac done #
							 | 
						|
								shift `expr $OPTIND - 1` #
							 | 
						|
								if [ $OFFLOAD_EXECUTION ] ; then #
							 | 
						|
								    if [ -z $MIC_CARD ] ; then #
							 | 
						|
								        MIC_CARD=mic0 #
							 | 
						|
								    fi #
							 | 
						|
								    TMPDIR_HOST=$(mktemp -d /tmp/libtbbmallocXXXXXX) #
							 | 
						|
								    TMPDIR_MIC=$(sudo ssh $MIC_CARD mktemp -d /tmp/libtbbmallocXXXXXX) #
							 | 
						|
								    sudo ssh $MIC_CARD "chmod +x $TMPDIR_MIC" #
							 | 
						|
								    cp "./mic/libtbbmalloc"* "$TMPDIR_HOST" >/dev/null 2>/dev/null #
							 | 
						|
								    sudo scp "$TMPDIR_HOST"/* $MIC_CARD:"$TMPDIR_MIC" >/dev/null 2>/dev/null #
							 | 
						|
								    LD_LIBRARY_PATH=$TMPDIR_MIC:$LD_LIBRARY_PATH #
							 | 
						|
								    export LD_LIBRARY_PATH #
							 | 
						|
								fi #
							 | 
						|
								# Run the command line passed via parameters
							 | 
						|
								export LD_PRELOAD #
							 | 
						|
								./$* #
							 | 
						|
								exitcode=$? #
							 | 
						|
								if [ $OFFLOAD_EXECUTION ] ; then #
							 | 
						|
								    sudo ssh $MIC_CARD rm -fr "$TMPDIR_MIC" >/dev/null 2>/dev/null #
							 | 
						|
								    rm -fr "$TMPDIR_HOST" >/dev/null 2>/dev/null #
							 | 
						|
								fi #
							 | 
						|
								exit ${exitcode} #
							 |