Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix #73 pgi #74

Closed
wants to merge 76 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
76 commits
Select commit Hold shift + click to select a range
b814eb8
Compile Suite git integration
ax3l Aug 23, 2013
c15acdd
Fix JSON escapes and export
ax3l Aug 23, 2013
58d59a9
Remove echo postParams
ax3l Aug 23, 2013
bdeb9f6
Grep key more precise with ""
ax3l Aug 23, 2013
390cc19
Pull request merge fix
ax3l Aug 23, 2013
2cd95c4
Merge pull request #33 from ax3l/compileSuite
psychocoderHPC Aug 26, 2013
d2f7636
CMake: include thread lib
ax3l Aug 26, 2013
414e139
Decode allJSON and clean conflict result
ax3l Aug 26, 2013
e80b568
Merge pull request #35 from ax3l/hotfix/compileSuite-json
psychocoderHPC Aug 26, 2013
a8a1ae8
Merge pull request #34 from ax3l/hotfix/cmake-thread
psychocoderHPC Aug 26, 2013
7ceee00
Re-Introduce -Wall and fix all warnings
ax3l Aug 27, 2013
795e4ab
Fix some -Wextra warnings
ax3l Aug 27, 2013
63b0080
Use Base Class Copy Constructor
ax3l Aug 28, 2013
3f1ecce
Enable -Wextra for GCC and fix warnings
ax3l Aug 28, 2013
8b565e1
SM 2.0+ for Weibel Example
ax3l Aug 28, 2013
3cfe419
Add new SLURM template for Taurus
ax3l Aug 28, 2013
07284b3
Be more precise about tasks
ax3l Aug 28, 2013
73a2bdd
Merge pull request #37 from ax3l/topic/warnings
psychocoderHPC Aug 29, 2013
0d55c09
Add Taurus READMEs
ax3l Aug 29, 2013
3f31704
Merge pull request #39 from ax3l/topic/slurm-taurus
psychocoderHPC Aug 30, 2013
51446c4
Update INSTALL.md
ax3l Sep 5, 2013
bfe6555
fix lambda lib
Sep 5, 2013
54a0bfb
make PIConGPU incompatible to sm_13
Sep 5, 2013
eef746a
Merge pull request #42 from Heikman/fix/Lambda
PrometheusPi Sep 5, 2013
d054909
algorithm::host::Foreach add 1/2D, SphericMapper
ax3l Sep 10, 2013
d40f8f1
Use more Vectors and Fix GetMax return type
ax3l Sep 10, 2013
7fbf05d
Use Shrink() and new name GetRange
ax3l Sep 11, 2013
f3072ae
Remove unnecessay type_cast to same type
ax3l Sep 11, 2013
3976f25
Merge remote-tracking branch 'felix/master' into dev
ax3l Sep 11, 2013
c043b3c
Add missing openmpi
ax3l Sep 11, 2013
f434235
Merge pull request #44 from ax3l/topic/algoHostForeach
Sep 11, 2013
f1d5b8a
Update INSTALL.md
ax3l Sep 12, 2013
9ad13bf
implement perfect forwarding within lambda functors
Sep 11, 2013
d269aa1
implement perfect forwarding within lambda functors. Add forward.hpp
Sep 12, 2013
6ba2aea
removed unneccesary PMacc::
Sep 12, 2013
5b0fe78
Merge pull request #46 from Heikman/fix/BrokenReference
ax3l Sep 12, 2013
fad9060
remove old "binary" matrix command
ax3l Sep 11, 2013
b388d76
Fix #43 Implicit -q when -j with compile script
ax3l Sep 13, 2013
3669c7c
Merge pull request #47 from ax3l/fix/tools-density-png
psychocoderHPC Sep 13, 2013
58e161f
Merge remote-tracking branch 'ax3l/doc/alphaLogo' into dev
ax3l Sep 15, 2013
c2d7e0c
Cell2Particle: Access particles by frame
ax3l Sep 16, 2013
1d35526
Merge pull request #49 from ax3l/topic/cell2particleAttr
Sep 16, 2013
1c3636d
fix warning in __cudaKernel
psychocoderHPC Sep 16, 2013
8e4609e
Cleanup CmakeLists and require 2.8.5+
ax3l Sep 16, 2013
ff52199
Doc: cmake 2.8.5+
ax3l Sep 16, 2013
9a0a886
Merge pull request #52 from ax3l/fix/CMakeIncl
psychocoderHPC Sep 17, 2013
e1d7e6a
Merge pull request #51 from psychocoderHPC/fix/cudaKernel_warnings
ax3l Sep 17, 2013
a247793
rewrite algorithm::ForEach, solve dependencies
psychocoderHPC Sep 12, 2013
d6adc02
add documentation to HDF5 functors
psychocoderHPC Sep 14, 2013
147f16d
update comments, add explicit type for FieldTmp operations
psychocoderHPC Sep 16, 2013
c71e463
add Heiko Burau to copyright list
psychocoderHPC Sep 16, 2013
3c8ed4f
fix compile time error in examples with ions and electrons
psychocoderHPC Sep 16, 2013
821f0f4
fix explanatory notes for pull request
psychocoderHPC Sep 17, 2013
0930b85
update and fix comments
psychocoderHPC Sep 17, 2013
9b63536
Merge pull request #50 from psychocoderHPC/feature-forEache
ax3l Sep 17, 2013
b7bd99b
close #48,clean up code,add new math::pow function
psychocoderHPC Sep 18, 2013
4bf8dd7
add pow definition and double implementation
psychocoderHPC Sep 18, 2013
fb2354d
add Heiko to copyright list
psychocoderHPC Sep 18, 2013
fe8e4a2
fix spelling mistake
psychocoderHPC Sep 18, 2013
54f3c51
close #53, warning in SimulationBox
psychocoderHPC Sep 18, 2013
e9b1309
Update PARTICIPATE.md
ax3l Sep 18, 2013
e7f66ac
Merge pull request #55 from psychocoderHPC/fix/warning_gameOfLife
ax3l Sep 18, 2013
b7e904d
Merge pull request #54 from psychocoderHPC/feature/math_pow
ax3l Sep 18, 2013
669cf83
fix bug in cuSTL/container/view/View.hpp
Sep 19, 2013
5ea192c
Merge pull request #62 from Heikman/fix/View
psychocoderHPC Sep 19, 2013
6194391
mpiInfo: fix broken CMakeFile
ax3l Sep 17, 2013
c272dbb
BullXMPI / FindMPI fix
ax3l Sep 17, 2013
9b907e2
Fix ELSEIF -> ELSE mismatch
ax3l Sep 20, 2013
b5ff57c
Merge pull request #64 from ax3l/fix/mpiInfo
psychocoderHPC Sep 20, 2013
b4a56c9
gasSphereFlanks: add inner radius
ax3l Sep 23, 2013
eb3b167
Merge pull request #66 from ax3l/topic/ring
PrometheusPi Sep 23, 2013
a4211ab
Add TypeTraits for Splash Types
ax3l Sep 25, 2013
55f6735
Merge pull request #69 from ax3l/topic/traitSplash
psychocoderHPC Sep 26, 2013
1528fd6
fix #71, fix bug in cfg
psychocoderHPC Sep 30, 2013
c2abc81
Merge pull request #72 from psychocoderHPC/fix/currentCalculation
ax3l Sep 30, 2013
0323ce9
Fix string compare for PGI
ax3l Oct 2, 2013
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
# If not, see <http://www.gnu.org/licenses/>.
#

cmake_minimum_required(VERSION 2.8)
cmake_minimum_required(VERSION 2.8.5)

OPTION(VAMPIR_ENABLE "create picongpu with vampir support" OFF)

Expand Down
2 changes: 1 addition & 1 deletion buildsystem/CompileSuite/autoTests/compileRun.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
#

user="picman"
numParallel=3
numParallel=2

exch="/home/"$user"/exchange"
picExport=$exch"/pic_export"
Expand Down
11 changes: 5 additions & 6 deletions buildsystem/CompileSuite/autoTests/config.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright 2013 Axel Huebl
# Copyright 2013 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand All @@ -21,11 +21,10 @@

# global configs ##############################################################
#
cnf_branches[0]="branches/dev"
cnf_scheduler_secret="..."
cnf_scheduler="https://example.com?client="$cnf_scheduler_secret


cnf_queue="queue.cnf"
cnf_svndir="$HOME/pic_svn/"
cnf_gitdir="$HOME/pic_git/"
cnf_exportdir="$HOME/pic_export/"
cnf_extfile="$HOME/machines/exchange.ext2"

Expand All @@ -40,7 +39,7 @@ cnf_numParallel=2

# send a congrats mail if N commits in a row where successful
# (kind of a heart beat for this script)
cnf_congrats=3
cnf_congrats=10

# mail settings
cnf_smtp="smtp.example.com:25"
Expand Down
125 changes: 125 additions & 0 deletions buildsystem/CompileSuite/autoTests/get_work.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
#!/bin/bash
#
# Copyright 2013 Axel Huebl
#
# This file is part of PIConGPU.
#
# PIConGPU is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# PIConGPU 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 PIConGPU.
# If not, see <http://www.gnu.org/licenses/>.
#

# Contact the scheduler and request a new task to work on
# create a read only, clean source
# image

thisDir=$(cd `dirname $0` && pwd)"/"

. "$thisDir"config.sh

security_check $thisDir

# clean up old stuff
#
rm -rf $cnf_gitdir/* $cnf_gitdir/.git*
mkdir -p $cnf_gitdir
cd $cnf_gitdir
rm -rf $cnf_exportdir
mkdir -p $cnf_exportdir

# check for work
#
sched=`curl -d'payload={"action":"request"}' $cnf_scheduler 2>/dev/null`
if [ $? -ne 0 ]; then
echo "Error contacting scheduler at $cnf_scheduler"
exit 1
fi

# decode JSON escaped strings
#
sched=${sched//\\\\/\\} # \
sched=${sched//\\\//\/} # /
sched=${sched//\\\'/\'} # '
sched=${sched//\\\"/\"} # "
sched=${sched//\\\t/ } # \t
sched=${sched//\\\n/
} # \n
sched=${sched//\\\r/^M} # \r
sched=${sched//\\\f/^L} # \f
sched=${sched//\\\b/^H} # \b

workType=`echo -e "$sched" | grep '"etype"' | awk -F':' '{print $2}' | awk -F'"' '{print $2}'`

# HEAD commit properties
eventid=`echo -e "$sched" | grep '"id"' | head -n1 | awk -F'":' '{print $2}' | awk -F',' '{print $1}'`
owner=`echo -e "$sched" | grep '"owner"' | head -n1 | awk -F'":' '{print $2}' | awk -F'"' '{print $2}'`
repo=`echo -e "$sched" | grep '"repo"' | head -n1 | awk -F'":' '{print $2}' | awk -F'"' '{print $2}'`
git=`echo -e "$sched" | grep '"git"' | head -n1 | awk -F'":' '{print $2}' | awk -F'"' '{print $2}'`
sha=`echo -e "$sched" | grep '"sha"' | head -n1 | awk -F'":' '{print $2}' | awk -F'"' '{print $2}'`

echo $eventid > "$thisDir"runGuard

if [ "$workType" == "commit" ]
then
git clone -q $git .
git checkout -q $sha
elif [ "$workType" == "pull" ]
then
# BASE repos commit properties
owner_b=`echo -e "$sched" | grep '"owner"' | tail -n1 | awk -F'":' '{print $2}' | awk -F'"' '{print $2}'`
repo_b=`echo -e "$sched" | grep '"repo"' | tail -n1 | awk -F'":' '{print $2}' | awk -F'"' '{print $2}'`
git_b=`echo -e "$sched" | grep '"git"' | tail -n1 | awk -F'":' '{print $2}' | awk -F'"' '{print $2}'`
sha_b=`echo -e "$sched" | grep '"sha"' | tail -n1 | awk -F'":' '{print $2}' | awk -F'"' '{print $2}'`

branch=`echo -e "$sched" | grep '"branch"' | head -n1 | awk -F'":' '{print $2}' | awk -F'"' '{print $2}'`

git clone -q $git_b .
git checkout -q -b mergeTest $sha_b
git pull -q $git $branch
if [ $? -ne 0 ] ; then
# merge failed
cd -
exit 2
fi
else
cd -
exit 1
fi

rsync -a --exclude=.git . $cnf_exportdir

# iso
#genisoimage -D -iso-level 4 -quiet \
# -input-charset=iso8859-1 \
# -o $cnf_isofile $cnf_exportdir

# raw (loop dev)
rm -rf $cnf_extfile
qemu-img create -f raw $cnf_extfile 1G
/sbin/mke2fs -q -F $cnf_extfile

mntdir=$thisDir"tmp_mount"
mkdir $mntdir
fuseext2 -o rw+ $cnf_extfile $mntdir

mkdir $mntdir/pic_export
cp $thisDir"compileRun.sh" $mntdir/
cp -R $cnf_exportdir/* $mntdir/pic_export

# unmount
sync
fusermount -u $mntdir
rm -rf $mntdir

# go back
cd -
63 changes: 39 additions & 24 deletions buildsystem/CompileSuite/autoTests/new_commits.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash
#
# Copyright 2013 Axel Huebl
# Copyright 2013 Axel Huebl
#
# This file is part of PIConGPU.
#
Expand All @@ -24,7 +24,7 @@
thisDir=$(cd `dirname $0` && pwd)"/"

. "$thisDir"config.sh
. "$thisDir"mails.sh
. "$thisDir"report.sh

security_check

Expand All @@ -36,41 +36,56 @@ touch "$thisDir"runGuard

# loop through each branch for new commits
#
cd $cnf_svndir
cd $cnf_gitdir

# loop branches
for b in "${cnf_branches[@]}"
do
cd $b
#for b in "${cnf_branches[@]}"
#do
# cd $b

# loop commits
# loop work
finished=0
while [ "$finished" -eq "0" ]
do
myRev=`svnversion`
rev=$(( myRev + 1 ))
"$thisDir"update_branch.sh $b $rev
"$thisDir"get_work.sh
finished=$?

# was this branch affected?
if [ "$finished" -eq "0" ]; then
logEntry=`svn log -v -r $rev`
commitLine=`echo $logEntry | sed 's/-//g'`
if [ -z "$commitLine" ] ; then
finished=1
# merge conflict occuted
if [ "$finished" -eq "2" ]; then
# clean message as failure
echo "Merge conflict detected. Aborting..."

state=-1
# git log infos
logEntry=`git log -1`
lastUser=`git log -1 --format=%an`
lastUserMail=`git log -1 --format=%ae`
if [ -z "$lastUserMail" ] ; then
lastUserMail="[email protected]"
fi
sha=`git log -1 --format=%H`
eventid=`cat "$thisDir"runGuard`

# create conclusion, update status (and send mails)
conclusion "$state" "$lastUser" "$lastUserMail" "$sha" "$eventid" "$logEntry" "$thisDir""runGuard"
fi

# new version! :)
if [ "$finished" -eq "0" ]; then
# state of this test
state=0 #0: suite errored, <0 compile failed, >0: ok

# svn log infos
logEntry=`svn log -v -r $rev`
lastUser=`echo "$logEntry" | head -n 2 | tail -n 1 | awk -F"|" '{print $2}'`
# git log infos
logEntry=`git log -1`
lastUser=`git log -1 --format=%an`
lastUserMail=`git log -1 --format=%ae`
if [ -z "$lastUserMail" ] ; then
lastUserMail="[email protected]"
fi
sha=`git log -1 --format=%H`
eventid=`cat "$thisDir"runGuard`

echo "Testing new version $b:$rev"
echo "Testing new commit"

cp $cnf_imgSrc $cnf_imgClone
echo "Base System Image cloned..."
Expand Down Expand Up @@ -134,8 +149,8 @@ do
# update lastRun history
echo $state > "$thisDir"lastRun.log

# create conclusion and send mails
conclusion "$state" "$lastUser" "$b" "$rev" "$logEntry" "$mntdir""/output"
# create conclusion, update status (and send mails)
conclusion "$state" "$lastUser" "$lastUserMail" "$sha" "$eventid" "$logEntry" "$mntdir""/output"

# unmount
fusermount -u $mntdir
Expand All @@ -148,8 +163,8 @@ do
fi
done

cd $cnf_svndir
done
cd $cnf_gitdir
#done

# del guard
rm "$thisDir"runGuard
Loading