search for: parallel

Displaying 20 results from an estimated 8643 matches for "parallel".

2018 Mar 02
1
[nbdkit PATCH] tests: Make parallel tests work at 512-byte granularity
qemu-io 2.12 will be changing its default alignment to unknown servers so that it does read-modify-write for anything less than 512 bytes. If we implement NBD_OPT_GO, then we can keep qemu-io using 1-byte alignment; but until then, this breaks our parallel tests when using 1-byte alignment because they end up with more delays than expected (thanks to the read-modify-write). Revamp the tests to not rely on sub-sector alignment, which works with both qemu-io 2.11 and 2.12, and fixes a TODO item. Signed-off-by: Eric Blake <eblake@redhat.com> ---...
2012 Aug 10
2
[LLVMdev] [RFC] Parallelization metadata and intrinsics in LLVM (for OpenMP, etc.)
Hello, I'd like to see support in clang/LLVM for multi-core parallelism, especially support for OpenMP. I think that the best way to do this is by designing an LLVM-based API (metadata and intrinsics) for expressing parallelism constructs, and having clang lower OpenMP code to that API. This will allow maximal preservation of optimization capabilities including targ...
2017 Jan 28
3
[RFC][PIR] Parallel LLVM IR -- Stage 0 -- IR extension
Dear all, This RFC proposes three new LLVM IR instructions to express high-level parallel constructs in a simple, low-level fashion. For this first stage we prepared two commits that add the proposed instructions and a pass to lower them to obtain sequential IR. Both patches have be uploaded for review [1, 2]. The latter patch is very simple and the former consists of almost only mechan...
2020 Mar 17
0
[nbdkit PATCH 3/4] tests: Don't let test-parallel-* hang on nbdkit bug
...erminal because of timeout's new process group, qemu-io fails to make progress. As solutions, we can either use 'timeout --foreground', or redirect stdin to something that is not a terminal; this patch uses the latter. Signed-off-by: Eric Blake <eblake@redhat.com> --- tests/test-parallel-file.sh | 19 ++++++++++--------- tests/test-parallel-nbd.sh | 13 ++++++++----- tests/test-parallel-sh.sh | 19 ++++++++++--------- 3 files changed, 28 insertions(+), 23 deletions(-) diff --git a/tests/test-parallel-file.sh b/tests/test-parallel-file.sh index 20276d48..136c2db5 100755 --- a/te...
2012 Oct 02
7
[LLVMdev] [RFC] Parallelization metadata and intrinsics in LLVM (for OpenMP, etc.)
Hal, Andrey, Alexey, >From the LLVM design viewpoint, there is a fundamental problem with both Hal's approach and the Intel approach: both are quite language-specific. OpenMP is a particular parallel language, with particular constructs (e.g., parallel regions) and semantics. LLVM is a language-neutral IR and infrastructure and OpenMP-specific concepts should not creep into it. I've included an excerpt from Hal's proposal below, which shows what I mean: the design is couched in terms...
2017 Mar 08
5
(no subject)
<mehdi.amini at apple.com>, Bcc: Subject: Re: [llvm-dev] [RFC][PIR] Parallel LLVM IR -- Stage 0 -- IR extension Reply-To: In-Reply-To: <20170224221713.GA931 at arch-linux-jd.home> Ping. PS. Are there actually people interested in this? We will continue working anyway but it might not make sense to put it on reviews and announce it on the ML if nobody car...
2015 Mar 09
5
[LLVMdev] LLVM Parallel IR
I'm part of a research group at MIT looking to create an extension of LLVM that inherently allows one to nicely code a parallel loop. Most parallel frameworks tend to take the body of a parallel loop and stick it inside of a function for the parallel runtime to call when appropriate. However, this makes optimizations significantly more difficult as most compiler optimizations tend to be intraprocedural. The goal of this pa...
2017 Mar 08
3
[RFC][PIR] Parallel LLVM IR -- Stage 0 --
I assume the referring case is something like below, right? #pragma omp parallel num_threads(n) { #pragma omp critical { x = x + 1; } } If that is the case, the programmer is already writing the code that is not "serial equivalent". Our representation for parallelizer is %t = @llvm.region.entry()["omp.parallel"()...
2017 Mar 08
3
(no subject)
...Sadanand <vadve at illinois.edu>; Tian, Xinmin <xinmin.tian at intel.com>; TB Schardl <neboat at mit.edu>; acjacob at us.ibm.com Subject: Re: On 03/08/2017 07:36 AM, Johannes Doerfert wrote: > <mehdi.amini at apple.com>, > Bcc: > Subject: Re: [llvm-dev] [RFC][PIR] Parallel LLVM IR -- Stage 0 -- IR > extension > Reply-To: > In-Reply-To: <20170224221713.GA931 at arch-linux-jd.home> > > Ping. > > > > > PS. > > Are there actually people interested in this? > > We will continue working anyway but it might not make sen...
2017 Mar 08
4
(no subject)
...g "fork" into loop body does not work > for loop vectorizer, it shuts down vectorization, this is the same > issue as MIT's scheme. Totally true. The vectorizer needs to be thought about the fork-join at some point. However, you can for now sequentialize and introduce the llvm.parallel.loop annotations it already knows about. We (Simon Moll and me) are currently discussing how to teach the RV vectorizer to handle fork-join parallel regions in loops but also in otherwise straight line code. Once we make progress we'll let you know! Thanks! Johannes > -----Original Messa...
2012 Aug 13
0
[LLVMdev] [RFC] Parallelization metadata and intrinsics in LLVM (for OpenMP, etc.)
Hi, On 08/10/2012 11:06 PM, Hal Finkel wrote: > I'd like to see support in clang/LLVM for multi-core parallelism, > especially support for OpenMP. I think that the best way to do this is > by designing an LLVM-based API (metadata and intrinsics) for > expressing parallelism constructs, and having clang lower OpenMP code > to that API. This will allow maximal preservation of optimization &g...
2013 Feb 07
4
[LLVMdev] Parallel Loop Metadata
On Feb 7, 2013, at 10:55 AM, Pekka Jääskeläinen <pekka.jaaskelainen at tut.fi> wrote: > Hi Nadav, > > On 02/07/2013 07:46 PM, Nadav Rotem wrote: >> Pekka suggested that we add two kind of metadata: llvm.loop.parallel >> (attached to each loop latch) and llvm.mem.parallel (attached to each memory >> instruction!). I think that the motivation for the first metadata is clear - >> it says that the loop is data-parallel. I can also see us adding additional >> metadata such as llvm.loop.unrol...
2013 Jan 31
0
[LLVMdev] [PATCH] parallel loop metadata
Dear all, Here's an updated version of the parallel loop metadata patch. It includes documentation for the new metadata types with a semantics description. -- Pekka -------------- next part -------------- A non-text attachment was scrubbed... Name: parallel-loop-metadata.patch Type: text/x-patch Size: 12972 bytes Desc: not available URL: <http:...
2017 Mar 08
2
[RFC][PIR] Parallel LLVM IR -- Stage 0 --
> On Mar 8, 2017, at 11:50 AM, Hal Finkel <hfinkel at anl.gov> wrote: > > > On 03/08/2017 01:24 PM, Tian, Xinmin wrote: >> I assume the referring case is something like below, right? >> >> #pragma omp parallel num_threads(n) >> { >> #pragma omp critical >> { >> x = x + 1; >> } >> } >> >> If that is the case, the programmer is already writing the code that is not "serial equivalent". >> Our representat...
2017 Mar 08
2
(no subject)
The IR-region annotation we proposed is as below, there is no @llvm.parallel.for.iterator()..... There is no change to loop CFG. alloc A[100]; %t = call token @llvm.region.entry()["parallel.for"()] for(i = 0; i < 100; i++) { a[i] = f(i); } @llvm.region.exit(%t)() ["end.parallel.for"()] Xinmin -----Original Message----- F...
2017 Mar 08
2
(no subject)
On 03/08/2017 12:44 PM, Johannes Doerfert wrote: > I don't know who pointed it out first but Mehdi made me aware of it at > CGO. I try to explain it shortly. > > Given the following situation (in pseudo code): > > alloc A[100]; > parallel_for(i = 0; i < 100; i++) > A[i] = f(i); > > acc = 1; > for(i = 0; i < 100; i++) > acc = acc * A[i]; > > Afaik, with your parallel regions there won't be a CFG loop for the > parallel initialization, right? Instead some intrinsics that annotate >...
2013 Jan 30
3
[LLVMdev] [PATCH] parallel loop metadata
...t;> >> I think that's very important :-) > > ... > >> to be integrated. So I'd like at least a way to say "this is what I >> _really_ >> want the vectorizer to assume" in such metadata. > > > I agree. Thus, let's start with the 'parallel' semantics first, not > the vague ones. > > A conclusion of some kind for me to update the patch: > > 1) Rename the loop branch metadata back to llvm.loop.parallel. > > I'll add a definition of its semantics (as comments to Loop::isParallel()): Hello Pekka, I think it...
2017 Mar 08
3
(no subject)
...017, at 10:55 AM, Mehdi Amini <mehdi.amini at apple.com> wrote: > >> >> On Mar 8, 2017, at 5:36 AM, Johannes Doerfert <doerfert at cs.uni-saarland.de> wrote: >> >> <mehdi.amini at apple.com>, >> Bcc: >> Subject: Re: [llvm-dev] [RFC][PIR] Parallel LLVM IR -- Stage 0 -- IR extension >> Reply-To: >> In-Reply-To: <20170224221713.GA931 at arch-linux-jd.home> >> >> Ping. >> >> PS. >> >> Are there actually people interested in this? I’m definitely interested too. I will have some high-le...
2018 Mar 06
0
[PATCH nbdkit 1/2] tests: Remove QEMU_IO / HAVE_QEMU_IO.
This is for consistency with qemu-img, socat, ss, etc where we test for these binaries at run time. --- configure.ac | 4 ---- tests/Makefile.am | 8 +++----- tests/test-parallel-file.sh | 20 +++++++++++++------- tests/test-parallel-nbd.sh | 20 +++++++++++++------- 4 files changed, 29 insertions(+), 23 deletions(-) diff --git a/configure.ac b/configure.ac index 6025ce0..30e4c43 100644 --- a/configure.ac +++ b/configure.ac @@ -407,10 +407,6 @@ dnl Check for guestfish (on...
2013 Feb 04
2
[LLVMdev] RFC: [PATCH] parallel loop metadata
Hello all, Thanks for the comments. Attached is a new version with Tobias' and Sebastian's (final?) comments addressed. Any further comments are appreciated. Nadav suggested a request for comments in llvmdev before committing it. In order to describe the current idea of the parallel loop metadata, I think it's easiest to just copy-paste the documentation I wrote for this patch so one can inline-reply to it with the possible comments: +'``llvm.loop``' +^^^^^^^^^^^^^^^ + +It is sometimes useful to attach information to loop constructs. Currently, +loop metadata is i...