Re: [petsc-dev] OpenMP

2021-11-07 Thread Mark Adams
Ah, great. I guessed right (that was the page I was looking at but I still don't see this) #if defined(_OPENMP) && _OPENMP >= 201811 On Sat, Nov 6, 2021 at 8:47 PM Junchao Zhang wrote: > > > On Sat, Nov 6, 2021 at 3:51 PM Mark Adams wrote: > >> Yea, that is a bit inscrutable, but I see mumps is

Re: [petsc-dev] OpenMP

2021-11-06 Thread Junchao Zhang
On Sat, Nov 6, 2021 at 3:51 PM Mark Adams wrote: > Yea, that is a bit inscrutable, but I see mumps is the main/only user of > this: > > /* if using PETSc OpenMP support, we only call MUMPS on master ranks. > Before/after the call, we change/restore CPUs the master ranks can run on */ > > And I se

Re: [petsc-dev] OpenMP

2021-11-06 Thread Mark Adams
Yea, that is a bit inscrutable, but I see mumps is the main/only user of this: /* if using PETSc OpenMP support, we only call MUMPS on master ranks. Before/after the call, we change/restore CPUs the master ranks can run on */ And I see _OPENMP is a macro for the release date (mm) of the OMP v

Re: [petsc-dev] OpenMP

2021-11-06 Thread Junchao Zhang
On Sat, Nov 6, 2021 at 5:51 AM Mark Adams wrote: > Two questions on OMP: > > * Can I test for the version of OMP? I want >= 5 and I see this, which > looks promising: > include/petscsys.h:#elif defined(_OPENMP) && *_OPENMP >= 201307* && > !defined(_WIN32) > > * What is the difference between HAVE

[petsc-dev] OpenMP

2021-11-06 Thread Mark Adams
Two questions on OMP: * Can I test for the version of OMP? I want >= 5 and I see this, which looks promising: include/petscsys.h:#elif defined(_OPENMP) && *_OPENMP >= 201307* && !defined(_WIN32) * What is the difference between HAVE_OPENMP and HAVE_OPENMP_SUPPORT. Thanks, Mark

Re: [petsc-dev] OpenMP and web page

2021-01-15 Thread Barry Smith
t; Best regards, > > Jacob Faibussowitsch > (Jacob Fai - booss - oh - vitch) > Cell: (312) 694-3391 > > From: petsc-dev On Behalf Of Mark Adams > Sent: Friday, January 15, 2021 10:20 > To: For users of the development version of PETSc > Subject: [petsc-dev] OpenMP and web page &

Re: [petsc-dev] OpenMP and web page

2021-01-15 Thread jacob.fai
version of PETSc Subject: [petsc-dev] OpenMP and web page I am experimenting with launching asynchronous GPU solves in PCFieldsplit/additive using OpenMP and I found this web page, which I think is obsolete and should be removed: https://www.mcs.anl.gov/petsc/miscellaneous/petscthreads.html

[petsc-dev] OpenMP and web page

2021-01-15 Thread Mark Adams
I am experimenting with launching asynchronous GPU solves in PCFieldsplit/additive using OpenMP and I found this web page, which I think is obsolete and should be removed: https://www.mcs.anl.gov/petsc/miscellaneous/petscthreads.html Mark

Re: [petsc-dev] OpenMP for GPU course

2019-03-19 Thread Smith, Barry F. via petsc-dev
> On Mar 19, 2019, at 12:22 PM, Matthew Knepley wrote: > > On Tue, Mar 19, 2019 at 1:17 PM Jed Brown wrote: > Matthew Knepley writes: > > > Are you saying that using OpenMP 4.5 "offload" is something you would do? > > For applications that make sense for GPUs, yes. > > Would you say t

Re: [petsc-dev] OpenMP for GPU course

2019-03-19 Thread Jed Brown via petsc-dev
"Smith, Barry F." writes: >> On Mar 19, 2019, at 12:17 PM, Jed Brown wrote: >> >> Matthew Knepley writes: >> >>> Are you saying that using OpenMP 4.5 "offload" is something you would do? >> >> For applications that make sense for GPUs, yes. > > Oh, so you mean for AI ;) We really missed t

Re: [petsc-dev] OpenMP for GPU course

2019-03-19 Thread Smith, Barry F. via petsc-dev
> On Mar 19, 2019, at 12:17 PM, Jed Brown wrote: > > Matthew Knepley writes: > >> Are you saying that using OpenMP 4.5 "offload" is something you would do? > > For applications that make sense for GPUs, yes. Oh, so you mean for AI ;)

Re: [petsc-dev] OpenMP for GPU course

2019-03-19 Thread Smith, Barry F. via petsc-dev
> On Mar 19, 2019, at 12:12 PM, Matthew Knepley wrote: > > On Tue, Mar 19, 2019 at 12:31 PM Jed Brown via petsc-dev > wrote: > These are well-organized events that puts application teams together > with compiler developers and the like. I served as a mentor for the > Boulder hackathon last y

Re: [petsc-dev] OpenMP for GPU course

2019-03-19 Thread Jed Brown via petsc-dev
Matthew Knepley writes: > Are you saying that using OpenMP 4.5 "offload" is something you would do? For applications that make sense for GPUs, yes.

Re: [petsc-dev] OpenMP for GPU course

2019-03-19 Thread Jed Brown via petsc-dev
These are well-organized events that puts application teams together with compiler developers and the like. I served as a mentor for the Boulder hackathon last year (joining a NASA team that included PETSc user Gaetan Kenway) and learned a lot. It's highly recommended to prepare for the event by

[petsc-dev] OpenMP for GPU course

2019-03-19 Thread Smith, Barry F. via petsc-dev
I got this off an ECP mailing list. OpenMP Brookathon 2019 April 29 – May 2, 2019 URL: https://www.bnl.gov/ompbrookathon2019/ The Computational Science Initiative at Brookhaven National Laboratory (BNL) is organizing in conjunction with Oak Ridge National Laboratory (ORNL) and IBM, the "Op

Re: [petsc-dev] openmp

2013-11-06 Thread Jed Brown
Svetlana Tkachenko writes: > For the bigger (non-test) project, I would really make use of > --free-whatever options you gave. But simply writing "prog: prog.o > foo.o ${FLINKER} -ffree-form -o $@ $^ ${PETSC_LIB}", and looking at > 'make' output, shows that it ignored my lines entirely and keeps >

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 12:56, Jed Brown wrote: > Svetlana Tkachenko writes: > > > ~/dev/test/petsc $ mv solver.f solver.F > > ~/dev/test/petsc $ make > > gfortran -c -fPIC -Wall -Wno-unused-variable -g -fopenmp > > -I/home//petsc/include > > -I/home//petsc/linux-amd64/include > > -I/home//p

Re: [petsc-dev] openmp

2013-11-06 Thread Jed Brown
Svetlana Tkachenko writes: > Using FLINKER instead of CLINKER in the makefile gets it to compile without > errors. However, the previous behaviour persists (?). > > ~/dev/test/petsc $ make > gfortran -c -fPIC -Wall -Wno-unused-variable -g -fopenmp > -I/home//petsc/include -I/home//petsc/linux

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 14:24, Svetlana Tkachenko wrote: > > > On Thu, 7 Nov 2013, at 14:22, Svetlana Tkachenko wrote: > > > > > > On Thu, 7 Nov 2013, at 14:15, Jed Brown wrote: > > > Svetlana Tkachenko writes: > > > > > > > On Thu, 7 Nov 2013, at 13:59, Jed Brown wrote: > > > >> Svetlana Tk

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 14:22, Svetlana Tkachenko wrote: > > > On Thu, 7 Nov 2013, at 14:15, Jed Brown wrote: > > Svetlana Tkachenko writes: > > > > > On Thu, 7 Nov 2013, at 13:59, Jed Brown wrote: > > >> Svetlana Tkachenko writes: > > >> > What do you mean? (I don't think the program name ha

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 14:15, Jed Brown wrote: > Svetlana Tkachenko writes: > > > On Thu, 7 Nov 2013, at 13:59, Jed Brown wrote: > >> Svetlana Tkachenko writes: > >> > What do you mean? (I don't think the program name has to be 'main'.). > >> > >> No, it doesn't. The name is meaningless in F

Re: [petsc-dev] openmp

2013-11-06 Thread Jed Brown
Svetlana Tkachenko writes: > On Thu, 7 Nov 2013, at 13:59, Jed Brown wrote: >> Svetlana Tkachenko writes: >> > What do you mean? (I don't think the program name has to be 'main'.). >> >> No, it doesn't. The name is meaningless in Fortran, but you need to use >> the keyword "program". >> >> >

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 13:59, Jed Brown wrote: > Svetlana Tkachenko writes: > > What do you mean? (I don't think the program name has to be 'main'.). > > No, it doesn't. The name is meaningless in Fortran, but you need to use > the keyword "program". > > > ~/dev/test/petsc $ cat myexample.F90

Re: [petsc-dev] openmp

2013-11-06 Thread Jed Brown
Svetlana Tkachenko writes: > What do you mean? (I don't think the program name has to be 'main'.). No, it doesn't. The name is meaningless in Fortran, but you need to use the keyword "program". > ~/dev/test/petsc $ cat myexample.F90 >program myexample > >call solver >

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 13:51, Jed Brown wrote: > Svetlana Tkachenko writes: > > > On Thu, 7 Nov 2013, at 12:56, Jed Brown wrote: > >> Svetlana Tkachenko writes: > >> > >> > ~/dev/test/petsc $ mv solver.f solver.F > >> > ~/dev/test/petsc $ make > >> > gfortran -c -fPIC -Wall -Wno-unused-variabl

Re: [petsc-dev] openmp

2013-11-06 Thread Jed Brown
Svetlana Tkachenko writes: > Thanks! I need to apologize as I didn't mention it in the previous > message: in my solver.F no I did not exceed the line length and I > don't know what it is referring to even. That line is not mine. It is the expanded error checking macro. Fortran does not provide

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 12:56, Jed Brown wrote: > Svetlana Tkachenko writes: > > > ~/dev/test/petsc $ mv solver.f solver.F > > ~/dev/test/petsc $ make > > gfortran -c -fPIC -Wall -Wno-unused-variable -g -fopenmp > > -I/home//petsc/include > > -I/home//petsc/linux-amd64/include > > -I/home/

Re: [petsc-dev] openmp

2013-11-06 Thread Jed Brown
Svetlana Tkachenko writes: > ~/dev/test/petsc $ mv solver.f solver.F > ~/dev/test/petsc $ make > gfortran -c -fPIC -Wall -Wno-unused-variable -g -fopenmp > -I/home//petsc/include -I/home//petsc/linux-amd64/include > -I/home//petsc/include/mpiuni-o solver.o solver.F > solver.F:8.46: > >

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 12:34, Jed Brown wrote: > Svetlana Tkachenko writes: > > > On Thu, 7 Nov 2013, at 10:22, Jed Brown wrote: > >> Svetlana Tkachenko writes: > >> > Right. I have spent half of an hour now trying to imagine what to do > >> > to link trying everything like a headless chicken an

Re: [petsc-dev] openmp

2013-11-06 Thread Jed Brown
Svetlana Tkachenko writes: > On Thu, 7 Nov 2013, at 10:22, Jed Brown wrote: >> Svetlana Tkachenko writes: >> > Right. I have spent half of an hour now trying to imagine what to do >> > to link trying everything like a headless chicken and it did not >> > work. >> >> You always have to send the

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 10:22, Jed Brown wrote: > Svetlana Tkachenko writes: > > Right. I have spent half of an hour now trying to imagine what to do > > to link trying everything like a headless chicken and it did not > > work. > > You always have to send the error message. > > > I would appr

Re: [petsc-dev] openmp

2013-11-06 Thread Jed Brown
Svetlana Tkachenko writes: > Right. I have spent half of an hour now trying to imagine what to do > to link trying everything like a headless chicken and it did not > work. You always have to send the error message. > I would appreciate if you could come up with something that links, not > just

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
On Thu, 7 Nov 2013, at 9:22, Jed Brown wrote: > Svetlana Tkachenko writes: > > > Thanks. Could you please send an example makefile for this small > > example as src/ts/examples/tutorials/makefile is huge and I don't know > > which part of it manages the -I -L stuff. > > There are examples in the

Re: [petsc-dev] openmp

2013-11-06 Thread Jed Brown
Svetlana Tkachenko writes: > Thanks. Could you please send an example makefile for this small > example as src/ts/examples/tutorials/makefile is huge and I don't know > which part of it manages the -I -L stuff. There are examples in the user's manual. I would start with this: ALL: ex2 include

Re: [petsc-dev] openmp

2013-11-06 Thread Matthew Knepley
On Wed, Nov 6, 2013 at 4:47 PM, Svetlana Tkachenko < svetlana.tkache...@fastmail.fm> wrote: > Thanks. Could you please send an example makefile for this small example > as src/ts/examples/tutorials/makefile is huge and I don't know which part > of it manages the -I -L stuff. > prog: prog.o

Re: [petsc-dev] openmp

2013-11-06 Thread Svetlana Tkachenko
Thanks. Could you please send an example makefile for this small example as src/ts/examples/tutorials/makefile is huge and I don't know which part of it manages the -I -L stuff. Svetlana On Thu, 7 Nov 2013, at 1:19, Barry Smith wrote: > >Your makefile does not indicate the location of mp

Re: [petsc-dev] openmp

2013-11-06 Thread Barry Smith
Your makefile does not indicate the location of mpif.h to your FORTRAN compiler which in the case of —with-mpi=0 is in ${PETSC}/include/mpiuni Note that if you simply copy a makefile from PETSc, say src/ts/examples/tutorials/makefile and modify that slightly for you code you don’t need t

[petsc-dev] openmp

2013-11-05 Thread Svetlana Tkachenko
I have configured petsc-dev (downloaded it today) with these options, and a small example. It appears to fail to compile without MPI with the error message: ./configure --with-cc=gcc --with-fc=gfortran --download-f-blas-lapack --with-openmp --with-mpi=0 ~/dev/test/petsc $ echo $LD_LIBRARY_PATH

[petsc-dev] OpenMP in PETSc when calling from Fortran?

2013-03-06 Thread Barry Smith
I don't see any options for turning on the threads here? #PETSc Option Table entries: -ksp_type bcgs -log_summary -pc_type lu #End of PETSc Option Table entries From http://www.mcs.anl.gov/petsc/features/threads.html ? The three important run-time options for using threads are:

[petsc-dev] OpenMP in PETSc when calling from Fortran?

2013-03-06 Thread Åsmund Ervik
Hi again, On 01. mars 2013 20:06, Jed Brown wrote: > > Matrix and vector operations are probably running in parallel, but probably > not the operations that are taking time. Always send -log_summary if you > have a performance question. > I don't think they are running in parallel. When I analy

[petsc-dev] OpenMP in PETSc when calling from Fortran?

2013-03-01 Thread Jed Brown
On Fri, Mar 1, 2013 at 3:26 AM, ?smund Ervik wrote: > Thanks for clarifying this. I am already using OpenMP pragmas in non-PETSc > routines in my code, and using petsc-dev. Are you saying that I should also > somehow use OpenMP pragmas around the calls to KSPSolve etc.? > > Suppose that my progra

[petsc-dev] OpenMP in PETSc when calling from Fortran?

2013-03-01 Thread Åsmund Ervik
Hi Barry, On 28. feb. 2013 17:38, Barry Smith wrote: > > 2) You should not need petscthreadcomm.h in Fortran. Simply using OpenMP > progmas in your portion of the code. > Thanks for clarifying this. I am already using OpenMP pragmas in non-PETSc routines in my code, and using petsc-dev. A

[petsc-dev] OpenMP in PETSc when calling from Fortran?

2013-02-28 Thread Åsmund Ervik
Hi, Having read that petsc-dev has the possibility of using OpenMP to run PC and KSP routines in parallel, and that people are getting nice speedup with this, I wanted to make use of this feature in our code. It is an incompressible two-phase flow solver programmed in Fortran which used PETSc

[petsc-dev] OpenMP in PETSc when calling from Fortran?

2013-02-28 Thread Barry Smith
1) Work with petsc-dev http://www.mcs.anl.gov/petsc/developers/index.html the threaded stuff is more mature. 2) You should not need petscthreadcomm.h in Fortran. Simply using OpenMP progmas in your portion of the code. 3) See http://www.mcs.anl.gov/petsc/features/threads.html for a

[petsc-dev] OpenMP compiler options

2012-05-29 Thread Matthew Knepley
On Tue, May 29, 2012 at 3:52 PM, Jed Brown wrote: > The OpenMP flags do not definitively identify that OpenMP is used. In > particular, IBM XL interprets Cray's option "-h omp" as being equivalent to > "-soname omp", then silently ignores the Open MP pragmas. We can perhaps > "fix" this instance

[petsc-dev] OpenMP compiler options

2012-05-29 Thread Jed Brown
On Tue, May 29, 2012 at 10:56 AM, Satish Balay wrote: > Perhaps the 'empty' flag check should be at the begining of the list.. > No, because most compilers ignore the pragmas when no options are given. I do not know of any portable way, short of running code, to determine whether a compiler used

[petsc-dev] OpenMP compiler options

2012-05-29 Thread Satish Balay
Perhaps the 'empty' flag check should be at the begining of the list.. [we do have other places in configure where we fix the order in which flags are checked - due to similar conflicts between compilers] Satish On Tue, 29 May 2012, Jed Brown wrote: > The OpenMP flags do not definitively identi

[petsc-dev] OpenMP compiler options

2012-05-29 Thread Jed Brown
The OpenMP flags do not definitively identify that OpenMP is used. In particular, IBM XL interprets Cray's option "-h omp" as being equivalent to "-soname omp", then silently ignores the Open MP pragmas. We can perhaps "fix" this instance by moving -qsmp up in the list, but we may eventually need t

[petsc-dev] OpenMP Support

2012-05-10 Thread Gerard Gorman
Hi Dave I should just say that we still have not finished a code review with the petsc-dev team so any faults should be assumed to be ours rather than theirs! Michele just put a preprint of our paper covering the preliminary work on arXiv, which you might found useful: http://arxiv.org/abs/1205.2

[petsc-dev] OpenMP Support

2012-05-09 Thread Dave Nystrom
Hi Gerard, Thanks for the info. Is there any documentation on how to use the petsc OpenMP support? I would be interested in trying it out. Thanks, Dave Gerard Gorman writes: > Hi Dave > > OpenMP support exists for vec and mat (only AIJ so far). There is a big > difference in performance

[petsc-dev] OpenMP Support

2012-05-09 Thread Gerard Gorman
Hi Dave OpenMP support exists for vec and mat (only AIJ so far). There is a big difference in performance depending on available memory bandwidth and the compiler OpenMP implementation. In application codes (such as Fluidity which is our main target code for this work) there are other significant

[petsc-dev] OpenMP Support

2012-05-08 Thread Jed Brown
On Tue, May 8, 2012 at 10:29 PM, Dave Nystrom wrote: > Is the pthreads support further along than the OpenMP support? I have not > tried the pthreads support yet. Does either the pthreads support or the > OpenMP support implement the matvec or do they just do vector type > operations? > The pt

[petsc-dev] OpenMP Support

2012-05-08 Thread Jed Brown
On Tue, May 8, 2012 at 9:23 PM, Dave Nystrom wrote: > I see that petsc-dev now has some OpenMP support. Would a serial, non-mpi > code that uses petsc-dev be able to gain much performance improvement from > it > now for the case of doing sparse linear solve with cg and jacobi > preconditioning?

[petsc-dev] OpenMP Support

2012-05-08 Thread Dave Nystrom
Is the pthreads support further along than the OpenMP support? I have not tried the pthreads support yet. Does either the pthreads support or the OpenMP support implement the matvec or do they just do vector type operations? Jed Brown writes: > On Tue, May 8, 2012 at 9:23 PM, Dave Nystrom >

[petsc-dev] OpenMP Support

2012-05-08 Thread Dave Nystrom
I see that petsc-dev now has some OpenMP support. Would a serial, non-mpi code that uses petsc-dev be able to gain much performance improvement from it now for the case of doing sparse linear solve with cg and jacobi preconditioning? Thanks, Dave

[petsc-dev] OpenMP/Vec

2012-03-07 Thread Lawrence Mitchell
On 07/03/2012 15:26, Jed Brown wrote: > On Wed, Mar 7, 2012 at 09:12, Lawrence Mitchell > mailto:lawrence.mitchell at ed.ac.uk>> wrote: > > Moving forward, I've done a bunch of this macroisation, which makes the > code more PETSc-like. > > As you point out it's probably unwise to call omp_get_num

[petsc-dev] OpenMP/Vec

2012-03-07 Thread Lawrence Mitchell
On 28/02/2012 20:18, Jed Brown wrote: ... > I prefer inlining the loop bounds into macro/function calls at point of > use, rather than relying on magic names from a macro definition, but I'm > not completely wedded to the idea. > > > Not a big deal, we could optimize either variant.

[petsc-dev] OpenMP/Vec

2012-03-07 Thread Shri
> > > > Rather than adding an nthreads slot to vectors, I put it in the > > generic > > PetscObject struct -- we're threading matrices too. > > > > > > We are going with PetscLayout for distribution information with the > > pthreads implementations. > > Ah, that's a better approach. So probably

[petsc-dev] OpenMP/Vec

2012-03-07 Thread Jed Brown
On Wed, Mar 7, 2012 at 09:12, Lawrence Mitchell wrote: > Moving forward, I've done a bunch of this macroisation, which makes the > code > more PETSc-like. > > As you point out it's probably unwise to call omp_get_num_threads() on > every > loop iteration, so I went for the magic names in the end.

[petsc-dev] OpenMP/Vec

2012-02-28 Thread Lawrence Mitchell
Dear all, I've been doing some of the programming associated with the work Gerard's describing, so here's an attempt of a bit of a response with some summary of where we'd go next. On 28/02/12 04:39, Jed Brown wrote: > On Mon, Feb 27, 2012 at 16:31, Gerard Gorman

[petsc-dev] OpenMP/Vec

2012-02-28 Thread Jed Brown
On Tue, Feb 28, 2012 at 10:41, Lawrence Mitchell wrote: > It's possible that if one asks the gcc folk nicely enough that the > overhead might go to zero. Alternately, if it turns out that overheads are > unavoidable, and we've gone down the macro-ification route anyway (see > below) we could exp

[petsc-dev] OpenMP/Vec

2012-02-27 Thread Jed Brown
On Mon, Feb 27, 2012 at 16:31, Gerard Gorman wrote: > I had a quick go at trying to get some sensible benchmarks for this but > I was getting too much system noise. I am particularly interested in > seeing if the overhead goes to zero if num_threads(1) is used. > What timing method did you use? I

[petsc-dev] OpenMP/Vec

2012-02-27 Thread Gerard Gorman
Jed Brown emailed the following on 27/02/12 00:39: > On Sun, Feb 26, 2012 at 04:07, Gerard Gorman > wrote: > > > Did you post a repository yet? I'd like to have a look at the code. > > It's on Barry's favourite collaborative software development site of >

[petsc-dev] OpenMP/Vec

2012-02-27 Thread Sean Farley
On Mon, Feb 27, 2012 at 4:31 PM, Gerard Gorman wrote: > I'm surprised by this. I not aware of any compiler that doesn't have > OpenMP support - and then you do not actually enable OpenMP compilers > generally just ignore the pragma. Do you know of any compiler that does > not have OpenMP support w

[petsc-dev] OpenMP/Vec

2012-02-27 Thread Jed Brown
On Sun, Feb 26, 2012 at 22:54, recrusader wrote: > For multithread support in PETSc, my question is whether KSP and/or PC > work when Vec and Mat use multithread mode. > Yes -- next part -- An HTML attachment was scrubbed... URL:

[petsc-dev] OpenMP/Vec

2012-02-26 Thread recrusader
Dear Jed, For multithread support in PETSc, my question is whether KSP and/or PC work when Vec and Mat use multithread mode. Thanks, Yujie On Sun, Feb 26, 2012 at 6:39 PM, Jed Brown wrote: > On Sun, Feb 26, 2012 at 04:07, Gerard Gorman imperial.ac.uk>wrote: > >> > Did you post a repository ye

[petsc-dev] OpenMP/Vec

2012-02-26 Thread Jed Brown
On Sun, Feb 26, 2012 at 04:07, Gerard Gorman wrote: > > Did you post a repository yet? I'd like to have a look at the code. > > It's on Barry's favourite collaborative software development site of > course ;-) > > https://bitbucket.org/wence/petsc-dev-omp/overview > I looked through the code and

[petsc-dev] OpenMP/Vec

2012-02-26 Thread Jed Brown
On Sun, Feb 26, 2012 at 04:07, Gerard Gorman wrote: > > > I agree that different data sizes might require different approaches. > One might consider this as part of an autotuning framework for PETSc. > > The cost of spawning threads is generally minimised through the use of > thread pools typically

[petsc-dev] OpenMP/Vec

2012-02-26 Thread Gerard Gorman
Hi Jed Many thanks for your feedback. Jed Brown emailed the following on 24/02/12 04:06: > On Thu, Feb 16, 2012 at 10:33, Gerard Gorman > wrote: > > 2. For GCC I did not use a threaded blas. For Intel I used > -lmkl_intel_thread. However, it appears dnr

[petsc-dev] OpenMP/Vec

2012-02-23 Thread Jed Brown
Sorry about the slow response. On Thu, Feb 16, 2012 at 10:33, Gerard Gorman wrote: > Hi > > I have been running benchmarks on the OpenMP branch of petsc-dev on an > Intel Westmere (Intel(R) Xeon(R) CPU X5670 @ 2.93GHz). > > You can see all graphs + test code + code to generate results in the tar

[petsc-dev] OpenMP/Vec

2012-02-16 Thread Gerard Gorman
Hi I have been running benchmarks on the OpenMP branch of petsc-dev on an Intel Westmere (Intel(R) Xeon(R) CPU X5670 @ 2.93GHz). You can see all graphs + test code + code to generate results in the tar ball linked below and I am just going to give a quick summary here. http://amcg.ese.ic.ac.uk/~g

[petsc-dev] OpenMP support

2012-02-14 Thread Gerard Gorman
Matthew Knepley emailed the following on 14/02/12 00:34: > > As a first step - can we add OpenMP support to PETSc conf? > Lawrence made > a first pass at this: > > https://bitbucket.org/wence/petsc-dev-omp/src/52afd5fd2c25/config/PETSc/packages/openmp.py > It does need extendin

[petsc-dev] OpenMP support

2012-02-13 Thread Matthew Knepley
On Mon, Feb 13, 2012 at 9:28 AM, Gerard Gorman wrote: > Hi > > I have been working with Lawrence Mitchell and Michele Weiland at EPCC > to add OpenMP support to the mat/vec classes and we are at the stage > that we would like to give other other people a chance to play with it. > > Lawrence put a

[petsc-dev] OpenMP support

2012-02-13 Thread Gerard Gorman
Hi I have been working with Lawrence Mitchell and Michele Weiland at EPCC to add OpenMP support to the mat/vec classes and we are at the stage that we would like to give other other people a chance to play with it. Lawrence put a branch on bitbucket if you want to browse: https://bitbucket.org/we