Skip to content

GitHub actions compiler#14

Closed
umar456 wants to merge 34 commits intomasterfrom
github_actions_compiler
Closed

GitHub actions compiler#14
umar456 wants to merge 34 commits intomasterfrom
github_actions_compiler

Conversation

@umar456
Copy link
Owner

@umar456 umar456 commented Nov 19, 2022

Description

Fixes: # ...

Changes to Users

Checklist

  • Rebased on latest master
  • Code compiles
  • Tests pass
  • Functions added to unified API
  • Functions documented

Gallagher Donovan Pryor and others added 26 commits October 7, 2022 10:49
…ayfire#3304)

Co-authored-by: Gallagher Donovan Pryor <gallagher@arrayfire.com>
Co-authored-by: Umar Arshad <umar@arrayfire.com>
The way we were formatting the backend ID was incorrect and failed when we had
more than 3 backends. With the new oneAPI backend, this mechanism was failing
and causing errors.
* histogram ported to oneapi. 50/62 tests pass. see below

    Batch tests fail with value errors:
      Histogram/1.40Bins0min100max_Batch, where TypeParam = float
      Histogram/3.40Bins0min100max_Batch, where TypeParam = int
      Histogram/4.40Bins0min100max_Batch, where TypeParam = unsigned int
      Histogram/5.40Bins0min100max_Batch, where TypeParam = char
      Histogram/6.40Bins0min100max_Batch, where TypeParam = unsigned char
      Histogram/7.40Bins0min100max_Batch, where TypeParam = short
      Histogram/8.40Bins0min100max_Batch, where TypeParam = unsigned short
      Histogram/9.40Bins0min100max_Batch, where TypeParam = long long
      Histogram/10.40Bins0min100max_Batch, where TypeParam = unsigned long long

    Tests fail because reductions do not function for test harness:
      Histogram.SNIPPET_hist_nominmax
      Histogram.SNIPPET_histequal

    GFOR, LargeBins expected to fail (getMaxMemorySize not OneAPI supported):
      histogram.GFOR
      histogram.LargeBins

    IndexedArray expected to fail without JIT support:
      LargeBins

Authored-by: Gallagher Donovan Pryor <gallagher@arrayfire.com>
The install target was copying the forge library installed on the system. This
is not expected because the install command only copies the artifacts generated
by the project and not libraries installed on the system. We do want system
libraries to be installed when AF_INSTALL_STANDALONE is enabled. This commit
addresses both of these issues.
@umar456 umar456 force-pushed the github_actions_compiler branch 4 times, most recently from 36cfb57 to e5bac9d Compare November 19, 2022 20:48
@umar456 umar456 force-pushed the github_actions_compiler branch 6 times, most recently from f948936 to 829ffa0 Compare November 20, 2022 01:03
umar456 and others added 5 commits November 19, 2022 22:43
The random number generator for b8 was producing incorrect results on clang 14
due to loop unrolling. This commit addresses the underlying issue caused by
ineffective indexing on the b8 RNG and updates one ireduce test to use the
ASSERT_VEC_ARRAYS_EQ function
Previously the b8 RNG was only using the lest significant bits for the RNG
this is probably okay but it made the CPU indexing difficult. This commit
ensures that the LSB of each of the 4 integers are used instead of only
the first integer
* support 64bit hamming distance on CUDA
* CPU support for 64 bit __popc in hamming distance
* adds hammingMatcher tests for uintll type

Co-authored-by: syurkevi <stefan@arrayfire.com>
The arguments provided to OpenCL uses the C++ standard library
function std::to_string(). This function uses the locale to render
it's argument to a string.

It is a problem when arrayfire is used in a
software initialised with non "C" locale.

For instance, on a French computer, to_string(1.0) will output the
string "1,0000000".
This string is provided to OpenCL kernels, generating a syntax error.

The most portable way to fix this problem is to use a local ostringstream
imbued withe "C" locale.

An Other way would be to use C++17 to_chars function, as it only renders it
argument with "C" locale, without impact from the application or
system locale.

The patch is pretty simple, it changes the toString() function to use
the stringstream in src/backend/common/TemplateArg.cpp and changed the
to_string calls to this toString function in types.cpp.
@umar456 umar456 force-pushed the github_actions_compiler branch 8 times, most recently from 2f3b914 to 384e52b Compare November 22, 2022 07:28
@umar456 umar456 force-pushed the github_actions_compiler branch from 384e52b to d17c212 Compare November 22, 2022 07:30
@umar456 umar456 closed this Nov 22, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants