Re: [Matplotlib-users] Segmentation fault using imshow on large image

2009-06-22 Thread keflavich

Anyone else have ideas on how to display large images?

Thanks,
Adam
-- 
View this message in context: 
http://www.nabble.com/Segmentation-fault-using-imshow-on-large-image-tp23207792p24152022.html
Sent from the matplotlib - users mailing list archive at Nabble.com.


--
Are you an open source citizen? Join us for the Open Source Bridge conference!
Portland, OR, June 17-19. Two days of sessions, one day of unconference: $250.
Need another reason to go? 24-hour hacker lounge. Register today!
http://ad.doubleclick.net/clk;215844324;13503038;v?http://opensourcebridge.org
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Segmentation fault using imshow on large image

2009-04-27 Thread keflavich



Bugzilla from tkjacob...@gmail.com wrote:
 
 Hi
 
 It could be that you just have to much data for the stack. You can see/set 
 your stack size with ulimit -s (on linux/solaris at least). Try to set it
 to 
 unlimited:
 ulimit -s unlimited
 
 This has solved similar problems for me in the past.
 
 Best Regards
 Troels Kofoed Jacobsen
 

Tried it, no luck.  Thanks for the tip, though.
-- 
View this message in context: 
http://www.nabble.com/Segmentation-fault-using-imshow-on-large-image-tp23207792p23260454.html
Sent from the matplotlib - users mailing list archive at Nabble.com.


--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Segmentation fault using imshow on large image

2009-04-25 Thread Adam Ginsburg
Yep, I'm running on a 64 bit machine.  I've been dealing with larger
than 4GB data files in IDL, but I'd rather use python/numpy/matplotlib
if possible.

Here's the gdb session.  The error didn't happen in imshow, only when
I specified show(); I guess that means I must have had ioff() set
although I don't think that was my default choice last time I used
matplotlib.


milkyway /data/glimpseii $ gdb /usr/local/python/bin/python
GNU gdb Red Hat Linux (6.3.0.0-1.159.el4rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type show copying to see the conditions.
There is absolutely no warranty for GDB.  Type show warranty for details.
This GDB was configured as x86_64-redhat-linux-gnu...Using host
libthread_db library /lib64/tls/libthread_db.so.1.

(gdb) run
Starting program: /usr/local/python/bin/python
[Thread debugging using libthread_db enabled]
[New Thread 182900715072 (LWP 18039)]
Python 2.5 (r25:51908, Dec 22 2006, 16:08:43)
[GCC 3.4.6 20060404 (Red Hat 3.4.6-3)] on linux2
Type help, copyright, credits or license for more information.
 import matplotlib,scipy,numpy,pyfits
 from pylab import *
 f = pyfits.open('GLM_00600+_mosaic_I3.fits')
 imshow(f[0].data)
matplotlib.image.AxesImage object at 0x2aa3f45890
 show()

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 182900715072 (LWP 18039)]
0x002aa3170ab5 in _image_module::fromarray (this=Variable this
is not available.
) at src/image.cpp:872
872 src/image.cpp: No such file or directory.
    in src/image.cpp
Current language:  auto; currently c++
(gdb)


I've never used gdb before, so is there anything else I should be
doing at this point?

Thanks,
Adam


On Fri, Apr 24, 2009 at 7:52 AM, Michael Droettboom md...@stsci.edu wrote:

 On my machine (32-bit Fedora 10 with 2GB RAM), it chugs along swapping for a 
 lng time and then fails with a Python MemoryError exception -- which is 
 at least reasonable.

 I suspect you're running on a 64-bit machine and we're running into some sort 
 of non-64-bit-clean issue.  We try to be 64-bit clean, but it doesn't get 
 verified on a regular basis, and not all of us (myself included) are running 
 64-bit OSes.

 Can you try running python inside of gdb and getting a traceback?  That might 
 provide some clues.

 We can estimate a little bit as to the memory requirements -- though it's 
 hard to account for everything.

 Input array is (10370, 9320) x 4 = 386MB
 This array is always converted to doubles to convert to colors (this is 
 probably a place ripe for opimtization) so you get also 786MB.
 Then this gets converted to an RGBA array for another 386MB

 Mike

 Adam Ginsburg wrote:

 Hi, I've been getting a segmentation fault when trying to display
 large images.  A transcript of a sample session is below.  I'm using
 the TkAgg backend, and I am using numpy, but otherwise I have made no
 modifications to the matplotlib setup.


 milkyway /data/glimpseii $ alias pylab
 alias pylab='/usr/local/adm/config/python/bin/ipython -pylab -log'
 milkyway /data/glimpseii $ pylab
 Activating auto-logging. Current session state plus future input saved.
 Filename       : ipython_log.py
 Mode           : rotate
 Output logging : False
 Raw input log  : False
 Timestamping   : False
 State          : active
 Python 2.5 (r25:51908, Dec 22 2006, 16:08:43)
 Type copyright, credits or license for more information.

 IPython 0.9.1 -- An enhanced Interactive Python.
 ?         - Introduction and overview of IPython's features.
 %quickref - Quick reference.
 help      - Python's own help system.
 object?   - Details about 'object'. ?object also works, ?? prints more.

  Welcome to pylab, a matplotlib-based Python environment.
  For more information, type 'help(pylab)'.

 In [1]: import matplotlib,pyfits,numpy,scipy

 In [2]: scipy.__version__
 Out[2]: '0.7.0'

 In [3]: numpy.__version__
 Out[3]: '1.3.0'

 In [4]: matplotlib.__version__
 Out[4]: '0.98.5.2'

 In [5]: f = pyfits.open('GLM_00600+_mosaic_I3.fits')

 In [6]: f[0].data.shape
 Out[6]: (10370, 9320)

 In [7]: f[0].data.dtype
 Out[7]: dtype('f4')

 In [8]: imshow(f[0].data)
 Segmentation fault


 Any ideas?

 Thanks,
 Adam


--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Segmentation fault using imshow on large image

2009-04-25 Thread John Hunter
On Sat, Apr 25, 2009 at 9:53 AM, Adam Ginsburg
adam.ginsb...@colorado.eduwrote:

 Yep, I'm running on a 64 bit machine.  I've been dealing with larger
 than 4GB data files in IDL, but I'd rather use python/numpy/matplotlib
 if possible.

 Here's the gdb session.  The error didn't happen in imshow, only when
 I specified show(); I guess that means I must have had ioff() set
 although I don't think that was my default choice last time I used
 matplotlib.


 milkyway /data/glimpseii $ gdb /usr/local/python/bin/python
 GNU gdb Red Hat Linux (6.3.0.0-1.159.el4rh)
 Copyright 2004 Free Software Foundation, Inc.
 GDB is free software, covered by the GNU General Public License, and you
 are
 welcome to change it and/or distribute copies of it under certain
 conditions.
 Type show copying to see the conditions.
 There is absolutely no warranty for GDB.  Type show warranty for details.
 This GDB was configured as x86_64-redhat-linux-gnu...Using host
 libthread_db library /lib64/tls/libthread_db.so.1.

 (gdb) run
 Starting program: /usr/local/python/bin/python
 [Thread debugging using libthread_db enabled]
 [New Thread 182900715072 (LWP 18039)]
 Python 2.5 (r25:51908, Dec 22 2006, 16:08:43)
 [GCC 3.4.6 20060404 (Red Hat 3.4.6-3)] on linux2
 Type help, copyright, credits or license for more information.
  import matplotlib,scipy,numpy,pyfits
  from pylab import *
  f = pyfits.open('GLM_00600+_mosaic_I3.fits')
  imshow(f[0].data)
 matplotlib.image.AxesImage object at 0x2aa3f45890
  show()

 Program received signal SIGSEGV, Segmentation fault.
 [Switching to Thread 182900715072 (LWP 18039)]
 0x002aa3170ab5 in _image_module::fromarray (this=Variable this
 is not available.
 ) at src/image.cpp:872
 872 src/image.cpp: No such file or directory.
 in src/image.cpp
 Current language:  auto; currently c++
 (gdb)



Could you try and create an image using random data that is the same
dimensions and datatype as the fits data you are using htat replicates the
segfault, so we can try and reproduce the error as well as add it to our
test suite?

Thanks
JDH
--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Segmentation fault using imshow on large image

2009-04-25 Thread Troels Kofoed Jacobsen
Hi

It could be that you just have to much data for the stack. You can see/set 
your stack size with ulimit -s (on linux/solaris at least). Try to set it to 
unlimited:
ulimit -s unlimited

This has solved similar problems for me in the past.

Best Regards
Troels Kofoed Jacobsen

On Saturday 25 April 2009 16:53:27 Adam Ginsburg wrote:
 Yep, I'm running on a 64 bit machine.  I've been dealing with larger
 than 4GB data files in IDL, but I'd rather use python/numpy/matplotlib
 if possible.

 Here's the gdb session.  The error didn't happen in imshow, only when
 I specified show(); I guess that means I must have had ioff() set
 although I don't think that was my default choice last time I used
 matplotlib.


 milkyway /data/glimpseii $ gdb /usr/local/python/bin/python
 GNU gdb Red Hat Linux (6.3.0.0-1.159.el4rh)
 Copyright 2004 Free Software Foundation, Inc.
 GDB is free software, covered by the GNU General Public License, and you
 are welcome to change it and/or distribute copies of it under certain
 conditions. Type show copying to see the conditions.
 There is absolutely no warranty for GDB.  Type show warranty for details.
 This GDB was configured as x86_64-redhat-linux-gnu...Using host
 libthread_db library /lib64/tls/libthread_db.so.1.

 (gdb) run
 Starting program: /usr/local/python/bin/python
 [Thread debugging using libthread_db enabled]
 [New Thread 182900715072 (LWP 18039)]
 Python 2.5 (r25:51908, Dec 22 2006, 16:08:43)
 [GCC 3.4.6 20060404 (Red Hat 3.4.6-3)] on linux2
 Type help, copyright, credits or license for more information.

  import matplotlib,scipy,numpy,pyfits
  from pylab import *
  f = pyfits.open('GLM_00600+_mosaic_I3.fits')
  imshow(f[0].data)

 matplotlib.image.AxesImage object at 0x2aa3f45890

  show()

 Program received signal SIGSEGV, Segmentation fault.
 [Switching to Thread 182900715072 (LWP 18039)]
 0x002aa3170ab5 in _image_module::fromarray (this=Variable this
 is not available.
 ) at src/image.cpp:872
 872 src/image.cpp: No such file or directory.
 in src/image.cpp
 Current language:  auto; currently c++
 (gdb)


 I've never used gdb before, so is there anything else I should be
 doing at this point?

 Thanks,
 Adam

 On Fri, Apr 24, 2009 at 7:52 AM, Michael Droettboom md...@stsci.edu 
wrote:
  On my machine (32-bit Fedora 10 with 2GB RAM), it chugs along swapping
  for a lng time and then fails with a Python MemoryError exception --
  which is at least reasonable.
 
  I suspect you're running on a 64-bit machine and we're running into some
  sort of non-64-bit-clean issue.  We try to be 64-bit clean, but it
  doesn't get verified on a regular basis, and not all of us (myself
  included) are running 64-bit OSes.
 
  Can you try running python inside of gdb and getting a traceback?  That
  might provide some clues.
 
  We can estimate a little bit as to the memory requirements -- though it's
  hard to account for everything.
 
  Input array is (10370, 9320) x 4 = 386MB
  This array is always converted to doubles to convert to colors (this is
  probably a place ripe for opimtization) so you get also 786MB. Then this
  gets converted to an RGBA array for another 386MB
 
  Mike
 
  Adam Ginsburg wrote:
  Hi, I've been getting a segmentation fault when trying to display
  large images.  A transcript of a sample session is below.  I'm using
  the TkAgg backend, and I am using numpy, but otherwise I have made no
  modifications to the matplotlib setup.
 
 
  milkyway /data/glimpseii $ alias pylab
  alias pylab='/usr/local/adm/config/python/bin/ipython -pylab -log'
  milkyway /data/glimpseii $ pylab
  Activating auto-logging. Current session state plus future input saved.
  Filename   : ipython_log.py
  Mode   : rotate
  Output logging : False
  Raw input log  : False
  Timestamping   : False
  State  : active
  Python 2.5 (r25:51908, Dec 22 2006, 16:08:43)
  Type copyright, credits or license for more information.
 
  IPython 0.9.1 -- An enhanced Interactive Python.
  ? - Introduction and overview of IPython's features.
  %quickref - Quick reference.
  help  - Python's own help system.
  object?   - Details about 'object'. ?object also works, ?? prints more.
 
   Welcome to pylab, a matplotlib-based Python environment.
   For more information, type 'help(pylab)'.
 
  In [1]: import matplotlib,pyfits,numpy,scipy
 
  In [2]: scipy.__version__
  Out[2]: '0.7.0'
 
  In [3]: numpy.__version__
  Out[3]: '1.3.0'
 
  In [4]: matplotlib.__version__
  Out[4]: '0.98.5.2'
 
  In [5]: f = pyfits.open('GLM_00600+_mosaic_I3.fits')
 
  In [6]: f[0].data.shape
  Out[6]: (10370, 9320)
 
  In [7]: f[0].data.dtype
  Out[7]: dtype('f4')
 
  In [8]: imshow(f[0].data)
  Segmentation fault
 
 
  Any ideas?
 
  Thanks,
  Adam

 ---
--- Crystal Reports #45; New Free Runtime and 30 Day Trial
 Check out the new simplified licensign option that enables unlimited
 royalty#45;free 

Re: [Matplotlib-users] Segmentation fault using imshow on large image

2009-04-25 Thread Adam Ginsburg
A 1x1 array reproduces the error:

milkyway /data/glimpseii $ gdb /usr/local/python/bin/python
GNU gdb Red Hat Linux (6.3.0.0-1.159.el4rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type show copying to see the conditions.
There is absolutely no warranty for GDB.  Type show warranty for details.
This GDB was configured as x86_64-redhat-linux-gnu...Using host
libthread_db library /lib64/tls/libthread_db.so.1.

(gdb) run
Starting program: /usr/local/python/bin/python
[Thread debugging using libthread_db enabled]
[New Thread 182900715072 (LWP 19947)]
Python 2.5 (r25:51908, Dec 22 2006, 16:08:43)
[GCC 3.4.6 20060404 (Red Hat 3.4.6-3)] on linux2
Type help, copyright, credits or license for more information.
 from pylab import *
 x=rand(1,1)
 imshow(x)
matplotlib.image.AxesImage object at 0x2a9f532390
 show()

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 182900715072 (LWP 19947)]
0x002a9eac7ab5 in _image_module::fromarray (this=Variable this
is not available.
) at src/image.cpp:872
872 src/image.cpp: No such file or directory.
in src/image.cpp
Current language:  auto; currently c++
(gdb)

 Could you try and create an image using random data that is the same
 dimensions and datatype as the fits data you are using htat replicates the
 segfault, so we can try and reproduce the error as well as add it to our
 test suite?

 Thanks
 JDH




--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] Segmentation fault using imshow on large image

2009-04-24 Thread Michael Droettboom
On my machine (32-bit Fedora 10 with 2GB RAM), it chugs along swapping 
for a lng time and then fails with a Python MemoryError exception -- 
which is at least reasonable.

I suspect you're running on a 64-bit machine and we're running into some 
sort of non-64-bit-clean issue.  We try to be 64-bit clean, but it 
doesn't get verified on a regular basis, and not all of us (myself 
included) are running 64-bit OSes.

Can you try running python inside of gdb and getting a traceback?  That 
might provide some clues.

We can estimate a little bit as to the memory requirements -- though 
it's hard to account for everything.

Input array is (10370, 9320) x 4 = 386MB
This array is always converted to doubles to convert to colors (this is 
probably a place ripe for opimtization) so you get also 786MB.
Then this gets converted to an RGBA array for another 386MB

Mike

Adam Ginsburg wrote:
 Hi, I've been getting a segmentation fault when trying to display
 large images.  A transcript of a sample session is below.  I'm using
 the TkAgg backend, and I am using numpy, but otherwise I have made no
 modifications to the matplotlib setup.


 milkyway /data/glimpseii $ alias pylab
 alias pylab='/usr/local/adm/config/python/bin/ipython -pylab -log'
 milkyway /data/glimpseii $ pylab
 Activating auto-logging. Current session state plus future input saved.
 Filename   : ipython_log.py
 Mode   : rotate
 Output logging : False
 Raw input log  : False
 Timestamping   : False
 State  : active
 Python 2.5 (r25:51908, Dec 22 2006, 16:08:43)
 Type copyright, credits or license for more information.

 IPython 0.9.1 -- An enhanced Interactive Python.
 ? - Introduction and overview of IPython's features.
 %quickref - Quick reference.
 help  - Python's own help system.
 object?   - Details about 'object'. ?object also works, ?? prints more.

   Welcome to pylab, a matplotlib-based Python environment.
   For more information, type 'help(pylab)'.

 In [1]: import matplotlib,pyfits,numpy,scipy

 In [2]: scipy.__version__
 Out[2]: '0.7.0'

 In [3]: numpy.__version__
 Out[3]: '1.3.0'

 In [4]: matplotlib.__version__
 Out[4]: '0.98.5.2'

 In [5]: f = pyfits.open('GLM_00600+_mosaic_I3.fits')

 In [6]: f[0].data.shape
 Out[6]: (10370, 9320)

 In [7]: f[0].data.dtype
 Out[7]: dtype('f4')

 In [8]: imshow(f[0].data)
 Segmentation fault


 Any ideas?

 Thanks,
 Adam

 --
 Crystal Reports #45; New Free Runtime and 30 Day Trial
 Check out the new simplified licensign option that enables unlimited
 royalty#45;free distribution of the report engine for externally facing 
 server and web deployment.
 http://p.sf.net/sfu/businessobjects
 ___
 Matplotlib-users mailing list
 Matplotlib-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/matplotlib-users
   


--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] Segmentation fault using imshow on large image

2009-04-23 Thread Adam Ginsburg
Hi, I've been getting a segmentation fault when trying to display
large images.  A transcript of a sample session is below.  I'm using
the TkAgg backend, and I am using numpy, but otherwise I have made no
modifications to the matplotlib setup.


milkyway /data/glimpseii $ alias pylab
alias pylab='/usr/local/adm/config/python/bin/ipython -pylab -log'
milkyway /data/glimpseii $ pylab
Activating auto-logging. Current session state plus future input saved.
Filename   : ipython_log.py
Mode   : rotate
Output logging : False
Raw input log  : False
Timestamping   : False
State  : active
Python 2.5 (r25:51908, Dec 22 2006, 16:08:43)
Type copyright, credits or license for more information.

IPython 0.9.1 -- An enhanced Interactive Python.
? - Introduction and overview of IPython's features.
%quickref - Quick reference.
help  - Python's own help system.
object?   - Details about 'object'. ?object also works, ?? prints more.

  Welcome to pylab, a matplotlib-based Python environment.
  For more information, type 'help(pylab)'.

In [1]: import matplotlib,pyfits,numpy,scipy

In [2]: scipy.__version__
Out[2]: '0.7.0'

In [3]: numpy.__version__
Out[3]: '1.3.0'

In [4]: matplotlib.__version__
Out[4]: '0.98.5.2'

In [5]: f = pyfits.open('GLM_00600+_mosaic_I3.fits')

In [6]: f[0].data.shape
Out[6]: (10370, 9320)

In [7]: f[0].data.dtype
Out[7]: dtype('f4')

In [8]: imshow(f[0].data)
Segmentation fault


Any ideas?

Thanks,
Adam

--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users