• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Cocoa/Objective-C's Relative Performance
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Cocoa/Objective-C's Relative Performance


  • Subject: Re: Cocoa/Objective-C's Relative Performance
  • From: Alun ap Rhisiart <email@hidden>
  • Date: Thu, 13 Jan 2005 12:00:37 +0000


Ivan S. Kourtev wrote:

Perhaps I am missing the point and these Cocoa data structures are
only optimal for use with GUI widgets (of which there are never
millions).  I am starting to think that for maximum performance (I am
talking about data sets with hundreds of millions of elements) one
would always need a custom non-Cocoa (and not even Objectivee-C
because of the objc_msgsend() overhead) data structures.
Maybe it's time to Think Different? Although you don't often see them used in commerce, there are libraries designed specifically to deal with very large data sets, often encountered by scientists in fields such as earth sciences, meteorology, astronomy and so on. They are not simply data structures but a library of routines which internally act on the data structures.

There are three main ones.

1. HDF5 (Hierarchical Data Format version 5), developed by the National Center for Supercomputing Applications (NCSA) at the University of Illinois at Urbana-Champaign. Available from http://hdf.ncsa.uiuc.edu/ (and also from Fink). HDF(4) is the older version and not compatible with HDF5.

2. CDF (Common Data Format), developed by National Space Science Data Center at NASA. Available from http://nssdc.gsfc.nasa.gov/cdf/cdf_home.html

3. netCDF, developed by the National Center for Atmospheric Research (NCAR) as a branch off CDF. It provides similar facilities. Available from http://my.unidata.ucar.edu/content/software/netcdf/index.html (there is also a version from Fink).

A comparison of these types is available in the CDF FAQ at the above site. Another more indepth comparison is in this document http://hdf.ncsa.uiuc.edu/HDF5/RD100-2002/All_About_HDF5.pdf

These are all freely available, work on multiple OSes, have a number of language interfaces (at least C, FORTRAN and Java, some also have Perl and others). HDF5 in particular can handle petabytes of data, and is the one I would go for. netCDF and HDF5 are becoming increasingly compatible. PyTables is available for Scientific Python to use HDF5, should you need to create a cross-platform program in addition to your cocoa one, or for quick and dirty testing, or as a learning tool for HDF5 concepts (http://pytables.sourceforge.net/html/WelcomePage.html).

Hope that helps,

Alun ap Rhisiart

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: Cocoa/Objective-C's Relative Performance
      • From: Steven Kramer <email@hidden>
  • Prev by Date: Proxy User/Password *required* setting? Where is it?
  • Next by Date: Re: Bindings Book !!!!!
  • Previous by thread: Re: Cocoa/Objective-C's Relative Performance
  • Next by thread: Re: Cocoa/Objective-C's Relative Performance
  • Index(es):
    • Date
    • Thread