Skip to content

Commit

Permalink
Merge pull request #33 from miguelraz/testcleanup
Browse files Browse the repository at this point in the history
Tests cleanup
  • Loading branch information
eschnett authored Aug 29, 2018
2 parents 8b772ee + a1759e5 commit ab456c4
Show file tree
Hide file tree
Showing 5 changed files with 397 additions and 401 deletions.
26 changes: 4 additions & 22 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,30 +1,12 @@
# Documentation: http://docs.travis-ci.com/user/languages/julia/
language: julia
os:
- linux
- osx
- linux
julia:
- "0.6"
- 0.7
- "1.0"
- "nightly"
- nightly
notifications:
email: false
script:
- if [ -a .git/shallow ]; then git fetch --unshallow; fi
- |
julia -e 'if VERSION >= v"0.7.0-DEV.3630"
Pkg.add("OldPkg")
using Pkg
end
Pkg.clone(pwd())
Pkg.build("SIMD")
Pkg.test("SIMD"; coverage=true)'
after_success:
- |
if [ "$TRAVIS_JULIA_VERSION" = nightly ]; then
julia -e 'using Pkg
cd(Pkg.dir("SIMD"))
Pkg.add("Coverage")
using Coverage
Codecov.submit(process_folder())'
fi
- julia -e 'using Pkg; Pkg.dir("SIMD"); Pkg.add("Coverage"); using Coverage; Coveralls.submit(Coveralls.process_folder())';
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Explicit SIMD vectorization in Julia

This package allows programmers to explicitly SIMD-vectorize their Julia code. Ideally, the compiler (Julia and LLVM) would be able to do this automatically, especially for straightforwardly written code. In practice, this does not always work (for a variety of reasons), and the programmer is often left with uncertainty as to whether the code was actually vectorized. It is usually necessary to look at the generated machine code to determine whether the compiler actually vectorized the code.

By exposing SIMD vector types and corresponding operations, the programmer can explicitly vectorize their code. While this does not guaratee that the generated machine code is efficient, it relieves the compiler from determining whether it is legal to vectorize the code, deciding whether it is beneficial to do so, and rearranging the code to synthesize vector instructions.
By exposing SIMD vector types and corresponding operations, the programmer can explicitly vectorize their code. While this does not guarantee that the generated machine code is efficient, it relieves the compiler from determining whether it is legal to vectorize the code, deciding whether it is beneficial to do so, and rearranging the code to synthesize vector instructions.

Here is a simple example for a manually vectorized code that adds two arrays:
```Julia
Expand Down
42 changes: 25 additions & 17 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,23 @@
environment:
matrix:
- JULIA_URL: "https://julialang-s3.julialang.org/bin/winnt/x86/0.6/julia-0.6-latest-win32.exe"
- JULIA_URL: "https://julialang-s3.julialang.org/bin/winnt/x64/0.6/julia-0.6-latest-win64.exe"
- JULIA_URL: "https://julialang-s3.julialang.org/bin/winnt/x86/1.0/julia-1.0-latest-win32.exe"
- JULIA_URL: "https://julialang-s3.julialang.org/bin/winnt/x64/1.0/julia-1.0-latest-win64.exe"
- JULIA_URL: "https://julialangnightlies-s3.julialang.org/bin/winnt/x86/julia-latest-win32.exe"
- JULIA_URL: "https://julialangnightlies-s3.julialang.org/bin/winnt/x64/julia-latest-win64.exe"
- julia_version: 0.7
- julia_version: 1
- julia_version: nightly

platform:
- x86 # 32-bit
- x64 # 64-bit

# Uncomment the following lines to allow failures on nightly julia
# (tests will run but not make your overall status red)
matrix:
allow_failures:
- julia_version: nightly

branches:
only:
- master
- /release-.*/

notifications:
- provider: Email
Expand All @@ -18,18 +26,18 @@ notifications:
on_build_status_changed: false

install:
- ps: "[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12"
# Download most recent Julia Windows binary
- ps: (new-object net.webclient).DownloadFile(
$env:JULIA_URL,
"C:\projects\julia-binary.exe")
# Run installer silently, output to C:\projects\julia
- C:\projects\julia-binary.exe /S /D=C:\projects\julia
- ps: iex ((new-object net.webclient).DownloadString("https://raw.githubusercontent.com/JuliaCI/Appveyor.jl/version-1/bin/install.ps1"))

build_script:
# Need to convert from shallow to complete for Pkg.clone to work
- IF EXIST .git\shallow (git fetch --unshallow)
- C:\projects\julia\bin\julia -e "versioninfo(); VERSION >= v\"0.7.0-DEV.3630\" && using Pkg; Pkg.clone(pwd(), \"SIMD\"); Pkg.build(\"SIMD\")"
- echo "%JL_BUILD_SCRIPT%"
- C:\julia\bin\julia -e "%JL_BUILD_SCRIPT%"

test_script:
- C:\projects\julia\bin\julia --check-bounds=yes -e "VERSION >= v\"0.7.0-DEV.3630\" && using Pkg; Pkg.test(\"SIMD\")"
- echo "%JL_TEST_SCRIPT%"
- C:\julia\bin\julia -e "%JL_TEST_SCRIPT%"

# Uncomment to support code coverage upload. Should only be enabled for packages
# which would have coverage gaps without running on Windows
on_success:
- echo "%JL_CODECOV_SCRIPT%"
- C:\julia\bin\julia -e "%JL_CODECOV_SCRIPT%"
3 changes: 0 additions & 3 deletions src/SIMD.jl
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
__precompile__()

module SIMD
using Compat

#=
Expand Down
Loading

0 comments on commit ab456c4

Please sign in to comment.