Hi,

Various Sage users have reported on that parallelization of tensor field 
computations does not work on macOS. The latest report, yesterday on 
sagemanifolds.list:
https://sympa.obspm.fr/wws/arc/sagemanifolds.list/2018-08/msg00003.html
says that this example notebook
http://nbviewer.jupyter.org/github/sagemanifolds/SageManifolds/blob/master/Worksheets/v1.3/SM_Kerr.ipynb
fails with TypeError: Aborted (cf. the attached log), as soon as nproc is 
set to something different than 1 in cell no. 4:

Parallelism().set(nproc=8)
Parallelization of computations on manifolds is implemented via the 
multiprocessing module (using the @parallel decorator). 
It works well on Linux and provides important speed-up.
On macOS, while it fails in interactive sessions, it seems to work within the 
doctest framework (parallelization is doctested 
in various files in src/sage/manifolds and  src/sage/tensor/modules).

Apart from the manifold framework, does parallelization via the multiprocessing 
module has been already shown to work on macOS? 
Any hint on this issue would be appreciated (we don't have any macOS computer 
in our group...)

Eric.



-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.
TypeError                                 Traceback (most recent call last)
<ipython-input-34-b27f950e3fce> in <module>()
----> 1 nabla = g.connection() ; print(nabla)

/Applications/SageMath-8.3.app/Contents/Resources/sage/local/lib/python2.7/
site-packages/sage/manifolds/differentiable/metric.pyc in connection(self,
name, latex_name, init_coef)
    771             self._connection = LeviCivitaConnection(self, name,
    772
latex_name=latex_name,
--> 773
init_coef=init_coef)
    774         return self._connection
    775

/Applications/SageMath-8.3.app/Contents/Resources/sage/local/lib/python2.7/
site-packages/sage/manifolds/differentiable/levi_civita_connection.pyc in
__init__(self, metric, name, latex_name, init_coef)
    229             # the domain (i.e. disregarding the subcharts)
    230             for chart in self._domain.top_charts():
--> 231                 self.coef(chart._frame)
    232
    233     def _repr_(self):

/Applications/SageMath-8.3.app/Contents/Resources/sage/local/lib/python2.7/
site-packages/sage/manifolds/differentiable/levi_civita_connection.pyc in
coef(self, frame)
    525
    526                         # Computation and Assignation of values
--> 527                         for ii, val in make_Connect(listParalInput):
    528                             for jj in val:
    529                                 gam[jj[0],jj[1],jj[2],ii[0][1]] =
jj[3]

/Applications/SageMath-8.3.app/Contents/Resources/sage/local/lib/python2.7/
site-packages/sage/parallel/multiprocessing_sage.pyc in
parallel_iter(processes, f, inputs)
     75     result = p.imap_unordered(call_pickled_function,
     76                               [(fp, t) for t in inputs])
---> 77     for res in result:
     78         yield res
     79     p.close()

/Applications/SageMath-8.3.app/Contents/Resources/sage/local/lib/python2.7/
multiprocessing/pool.pyc in next(self, timeout)
    671         if success:
    672             return value
--> 673         raise value
    674
    675     __next__ = next                    # XXX

TypeError: Aborted

Reply via email to