grack.com

I just purchased the Atech Pro-9 9-in-1 flash card reader.  This thing is extremely cool- it has a number of different ports on the front to plug various storage items into.  A bit pricey (CDN$100), but cool nonetheless!

Getting it to work under linux is trivial.  If your kernel has CONFIG_SCSI_MULTI_LUN set, it will work out-of-the-box.  If not (RedHat kernels don’t set this flag by default), just add the following line to your modprobe.conf file for 2.6.x:

options scsi_mod max_luns=512

Or, if you are running 2.4.x, add the following line to modules.conf:

options scsi_mod max_scsi_luns=512

These options force the SCSI layer to scan up to 512 LUNs (sub-devices) on each SCSI device. It’s required because the 9-in-1 has four effective devices inside. Scanning the first device only will give you the first of the four devices only.

You should now see the following in dmesg when plugging the device in:

scsi0 : SCSI emulation for USB Mass Storage devices
  Vendor: AFT PRO   Model: -IX CF            Rev: 0.0>
  Type:   Direct-Access                      ANSI SCSI revision: 02
  Vendor: AFT PRO   Model: -IX SD            Rev: 0.0>
  Type:   Direct-Access                      ANSI SCSI revision: 02
  Vendor: AFT PRO   Model: -IX SM/XD         Rev: 0.0>
  Type:   Direct-Access                      ANSI SCSI revision: 02
  Vendor: AFT PRO   Model: -IX MS            Rev: 0.0>
  Type:   Direct-Access                      ANSI SCSI revision: 02

You can see the Compact Flash, Secure Digital, SmartMedia and Memory Stick interfaces appearing as separate devices. In theory, you can insert one piece of memory of each kind and use them simultaneously! I’ve only tried my SmartMedia card, personally, but it will likely work if you have multiple media types.

Read full post

I had made a mistake in packaging 0.6 and forgot to include NProf.Hook.dll. This has been corrected in the 0.7 package.

Sorry for the inconvenience.

Read full post

The nprof 0.6 alpha release is now available. Changes in this version are:

  • Fixes for recursive function calls
  • Some minor GUI updates (double-click profiler runs to open)
  • VS.NET add-in work - moved enable item to menu
  • Fixed major slowdown in large profiler runs introduced last version

Those people who use the VS.NET add-in should be very happy to know that it’s been worked on a fair bit. It should perform as expected now (at least it did in my testing).

The problem with recursive calls messing up the percentages has been fixed. With any luck I haven’t introduced any bugs with the other numbers. I’ve managed to profile an entire run of nprof with some good looking numbers. I’ve also changed the numbers that are displayed on the profile run list. They are:

  • # of calls: The total number of calls to the method
  • % of total: The percentage of total time (relative to the thread’s lifetime) spent in or under this method. This includes all time in methods called by this one.
  • % in method: Percentage of total time (relative to the thread’s lifetime) spent in the method itself.
  • % in children: Percentage of total time (relative to the thread’s lifetime) spent in the children of the method. This does not include time spent in the method called by children of children (or any other call to the method below itself).
  • % suspended: Percentage of total time (relative to the thread’s lifetime) during which the function was suspended.

In a future version I will allow customization of the displayed data columns, as well as batch sorting of the items.

Finally, I fixed a bug that I introduced in 0.5 that made large profile runs load very slowly (it was sorting the listview on each insertion). Large profile runs should no longer cause any grief.

Read full post

The nprof 0.5 alpha release is now available. Changes in this version are:

  • Improved UI (about box, new project icon)
  • Fixed sorting - faster, doesn’t crash
  • Removed GUILibrary dependency
  • New NAnt build scripts
  • Fixed callee timing percentages (now display as % instead of useless total ticks)
  • Added suspended time in callee description
  • Added command-line interface for SharpDevelop integration

The big change for me is the NAnt integration. This should allow me to release nprof more often (by removing the previously tedious and error-prone release steps). It should also help anyone interested in enhancing nprof to get a packaged release for testing.

Read full post