Wikipedia:Reference desk/Archives/Computing/2011 March 19

From Wikipedia, the free encyclopedia
Computing desk
< March 18 << Feb | March | Apr >> March 20 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


March 19[edit]

GNU Octave Manual - PDF Format[edit]

Resolved

  Is the 725-page GNU Octave Manual available anywhere in PDF format? Thanks. Rocketshiporion 01:50, 19 March 2011 (UTC)[reply]

ftp://ftp.gnu.org/gnu/octave/octave-3.4.0.tar.bz2 octave-3.4.0/doc/interpreter/octave.pdf ¦ Reisio (talk) 02:30, 19 March 2011 (UTC)[reply]
Thank you, Reisio. That's just what I was looking for! Rocketshiporion 08:28, 20 March 2011 (UTC)[reply]

Filtering Strings[edit]

I have a html file and want to delete all strings except those within <img> element. What program or method can do this job? Please give me some advices or recommendations, thank you! By the way, I am using Windows.--Merry Rabbit 05:02, 19 March 2011 (UTC)[reply]

You want a program that can do regular expressions (regex). There are many options, but I do not use any of the Windows programs. Do you have any programming editors? Those commonly have the ability to do regex search and replacement. Then, you can replace everything that is not in an img tag with nothing - deleting it. -- kainaw 05:20, 19 March 2011 (UTC)[reply]
I can use regexp and search the strings within img tag (<img src="[0-9a-z :\.\-\/]+">), but I failed to remove the strings that are out of img tag. --Merry Rabbit 06:27, 19 March 2011 (UTC)[reply]
What do you mean "all strings". Are you wanting to extract only things within <img> tags? If that's the case this might work (note that this is sed/perl formatting... but the first is the find, the second is the replace): s/.*?<img\s*(.*?>)<\/img>/$1/gi. If you were more specific we could be too. Shadowjams (talk) 08:05, 19 March 2011 (UTC)[reply]
Yes, I want to extract only strings within <img> tags. There are at least 5,000 strings I want to extract in the html file. So I am looking for an efficient method or software. --Merry Rabbit 15:42, 19 March 2011 (UTC)[reply]
I'm not sure I understand what you mean by "strings within img tags". If you mean a list of the attributes and their values, I've attached a Python program (which uses Beautiful Soup to parse the html) below. If you mean text between <img> and </img> tags, that isn't (at least formally) meaningful, as img is a self-terminating tag, which means </img> is (formally) meaningless.
python example
#!/usr/bin/python
from BeautifulSoup import BeautifulSoup
import urllib

data = urllib.urlopen('http://mcwalter.org').read()
soup = BeautifulSoup(data)

for x in soup.findAll('img'):
    print str(x)[5:-2]     # print the tag as a string
    print x.attrs          # print the tag as a list of (attrib,value) tuples
The two print lines are just examples - the first just prints the tag contents, the second shows them in a parsed format suitable for further processing. Which, if either, you use depends on what you're doing. -- Finlay McWalterTalk 18:24, 19 March 2011 (UTC)[reply]
Thank you for the help. Unfortunately, I can not use python...although I want to learn. My goal is simple, just want to extract all images' URLs from the html file. --Merry Rabbit 05:03, 20 March 2011 (UTC)[reply]
Here you go:
python example'
#!/usr/bin/python
from BeautifulSoup import BeautifulSoup
import urllib, urlparse

url = 'http://mcwalter.org'

#data = urllib.urlopen(url).read()
data = open('index.html').read()

soup = BeautifulSoup(data)
 
for x in soup.findAll('img'):
    if x.has_key('src'):
        print urlparse.urljoin(url,x['src'])
There are two data= lines: the first gets the html over http, the second from a local file called index.html Comment out which you don't need (lines beginning # are comments). In the file case url is the URL where you got the file from originally (it's used for resolving relative image src urls). -- Finlay McWalterTalk 18:29, 20 March 2011 (UTC)[reply]
I used Python 2.7 to run the codes but got error messages. It seemed BeautifulSoup was not installed successfully...Worse, I can not solve this problem... --Merry Rabbit 04:45, 23 March 2011 (UTC)[reply]
Traceback (most recent call last):
 File "C:\1.py", line 8, in <module>
   data = open('index.html').read()
IOError: [Errno 2] No such file or directory: 'index.html'

IE8[edit]

I recently downloaded this new IE9 thinking it will be even better than the previous version. How do I get rid of it?

So far as I can tell, mostly they have just deleted some of the useful little tools for getting around the internet easier, the little button in the corner that opens a screen with all the tabs listed across it has disappeared, the menu of recently visited sites is a lot smaller and all the little buttons for my favourite sites have gone, which makes finding for example this site take rather longer. Meanwhile, all the text has come up really big and bold, which I don't like. Although, I do like the new tabs page, with the list of sites ordered by popularity, with that little bar showing how often I visit each of them. If I could have that in place of IE8's 'new tabs page', that would be even better.

148.197.121.205 (talk) 11:17, 19 March 2011 (UTC)[reply]

When you install something like Internet Explorer, Windows usually takes a backup using the system restore utility. On my Vista system, it is located on the Start menu->Accessories->System Tools (although I have moved some things around). Take a look in there and set your system back to a time just before you installed IE9. However, this might remove some windows updates and other things too, especially if you have been running IE9 for more then a few days. Astronaut (talk) 14:35, 19 March 2011 (UTC)[reply]

So, I can't simply download the earlier version again? That would be a bit easier, I think. 148.197.121.205 (talk) 15:01, 19 March 2011 (UTC)[reply]

No, a restore is better. To re-install IE8 (if MS allows this at all), you might need to first de-install it, which might take out your bookmarks/favorites and other settings, too.
BTW, I view any updates from MS very skeptically, as I often find "new and improved" versions of their products are worse than the old ones. So it would be wise to read up on any upgrade they offer, before you risk your computer on their word that it's "better". StuRat (talk) 18:37, 19 March 2011 (UTC)[reply]

Actually after all that, I think I might give it a second chance, as it is, I'll most likely be getting a new computer soon. Instead, what I want to do now is find some way to get all the text back to normal size, at the moment on half the sites it is all in bold for no apparent reason. Then, if I can find out what is up with these 'quick tabs' or whatever that was, that seem to have disappeared, I might be happy. 148.197.121.205 (talk) 18:59, 19 March 2011 (UTC)[reply]

If you do want to uninstall it, see How do I install or uninstall Internet Explorer 9] at Microsoft. ---— Gadget850 (Ed) talk 19:04, 19 March 2011 (UTC)[reply]

Quick tabs are back, I found a keyboard shortcut for them, favourites bar buttons are back, and all the other clutter I never used has gone, I think I actually quite like this upgrade now, if only someone can tell my how to get the text back out of bold... 148.197.121.205 (talk) 19:22, 19 March 2011 (UTC)[reply]

Is there a customize menu anywhere? If so, see if you can change the font to something else to get rid of the bold. --Thekmc (Leave me a message) 20:05, 21 March 2011 (UTC)[reply]

Parallel computing for on-stage audio processing[edit]

I don't know much about parallel computing. Is there some way to distribute a CPU load over a number of ordinary laptop computers? I'm trying to run a Max patch for live audio processing, and the patch, by necessity, uses a lot of CPU. I imagen a system for using the CPUs of multiple computers would require a program to distribute the workload among the different machines? Does such a program exist? I've looked through a lot of articles. Pages like Beowulf (computing) don't seem directly applicable to what I need to do, but maybe I just haven't found the right page yet. Thanks, --145.116.9.163 (talk) 17:52, 19 March 2011 (UTC)[reply]

Yes, the program you are using would need to be designed for parallel computing. Also, since the speed of communications between the laptops would be a concern, this would only help if a lot of processing produces a small amount of data to be transferred.
But let's back up a bit. Why do you feel the need for parallel computing ? Is the software lagging and freezing ? If so, and if you have a multiple processor laptop, perhaps an "affinity" statement could be used to force Max Patch to use one processor while everything else uses another: [1] ? And, just in case it's not obvious, you should reboot and kill everything non-essential on the laptop, using the Task Manager, to get it to run more quickly (what's non-essential may require some trial-and-error to determine). Also, disable any automatic updates or virus scanner, and disconnect from the Internet, as all those lead to lags. StuRat (talk) 18:23, 19 March 2011 (UTC)[reply]
Some other thoughts:
1) The stage can be crowded enough, without having multiple laptops hooked together. More wires means more trip hazards, more potential interference, etc. Wireless connections can solve the trip hazard, but cause other problems, in turn.
2) Unless carefully designed, a system dependent on multiple computers would be less reliable, as it would fail if any of the components (computers or cables), failed.
3) A dedicated computer (one that does nothing else) is a better choice for something where reliable, real-time, quick processing is required. I'm not sure if there is a dedicated computer that would do what you need, though.
4) You could always do the processing beforehand, say in a recording studio, then play back that portion which requires Max Patch, at the concert, adding in the rest live. (Something like using a drum machine to do percussion.) Audiences would probably be OK with that. It's usually only recorded voices that really annoy an audience. StuRat (talk) 22:32, 19 March 2011 (UTC)[reply]
I doubt that it'd be possible to share work across multiple computers for a task like this, since latency is the precise problem that you're trying to avoid, and dividing work over multiple computers would introduce latency. The task might not even be parallelizable in the first place. Paul (Stansifer) 01:40, 20 March 2011 (UTC)[reply]
It looks like it just does some audio DSP stuff. Are you running 100's of channels or anything like that? If not, I'd just check whether your existing laptop is fast enough already. The article says that program has been around since the 1980's, and today's laptops can run circles around the mainframe computers of that era. They should be plenty fast enough for most audio purposes. If not, the next step up would probably be software that can use a desktop graphics accelerator (AMD Radeon, Nvidia Tesla, etc.) rather than a bunch of parallel laptops. 75.57.242.120 (talk) 10:27, 20 March 2011 (UTC)[reply]

Choice of CPUs[edit]

Resolved: Magog the Ogre 2 (talk) 21:55, 19 March 2011 (UTC)[reply]

I have just received a new motherboard in the mail, and I have two old CPUs sitting around. The first is an , and the second an . They both support a PGA478 socket, so I appear to be able to use either (unless I'm mistaken... the motherboard says mPGA478MT).

My question: which CPU will be better for which purposes?

From what I can see, the only thing better about the first one is that it supports 64-bit technology. As such, it will only be better if I'm running processor intensive math programs, which I'm not. Should I go with CPU 2? Magog the Ogre 2 (talk) 21:03, 19 March 2011 (UTC)[reply]

From List of Intel Pentium Dual-Core microprocessors and the page you linked, it's apparent Intel SVA4H is in the Merom (microprocessor) line. This is the newer Intel Core 2 line which has numerous enhancements improving performance over the older Intel Core/Pentium M line it was based on and that SL8VQ is. Although the specific processor is one of the reduced functionality (primarily in FSB and cache) Pentium processors, I still strongly suspect given the minimal clock speed difference (and in fact SVA4H is faster anyway) without having actually having looked at specific benchmarks that for most purposes Intel SVA4H will perform better probably significantly in some cases. Nil Einne (talk) 21:15, 19 March 2011 (UTC)[reply]
(edit conflict)The 64 bit-ness would really matter most if you wanted to have more than 4Gb of address space (which in practice means 3.4Gb or more of RAM), and you installed a 64 bit OS to access that. Beyond that, the slightly faster FSB of CPU2 is probably more important than the negligible core speed difference. The 2400 also has twice as much L2 cache. And it has VT-x, which is helpful if you're planning on running a virtualisation environment on it. -- Finlay McWalterTalk 21:19, 19 March 2011 (UTC)[reply]

Yikes! Two different answers does not make me happy! To clarify: I have 3GB of RAM I plan on using (IIRC the motherboard supports only up to 4GB), and I already uninstalled my 64-bit OS a while ago, as it seemed to be buggier than its 32-bit counterpart (even on Ubuntu), and as my processor at the time only supported a 32-bit OS. Magog the Ogre 2 (talk) 21:26, 19 March 2011 (UTC)[reply]

Well if you have a 32-bit O/S and memory accessible from a 32-bit processor, then I'd go with the 32-bit processor and save the 64-bit for your next (presumably 64-bit) system. StuRat (talk) 21:32, 19 March 2011 (UTC)[reply]


(EC multiple times) I wouldn't say I'd disagree with FM everything else being equal. But it's not and you're comparing two different processor lines. To use a more extreme example a Pentium D (Pentium 4 Dual Core) will often be lower performing then a Pentium Dual Core (from Core 2 Duo line) even if the Pentium D has a far higher clock speed and FSB. If VT-x matters to you then this may be worth any performance loss. But if you don't care about VT-x and performance is what you care about I stand by my answer.
Unfortunately getting good benchmarks for this sort of thing is likely to be difficult since they're rather different processors I'm quite sure coming out at different times and targeting different markets so there's a far chance no one trustworthy has done reliable benchmarking comparing the two. Ideally since you have both you could carry out your own benchmarks. But if that's not possible, you can take a lot at what's out there.
For example [2] [3] you can see both processors. They're actually both visible in in each page but I couldn't work out how to highlight them both so I included both in case you have trouble finding either one. However that only gives one benchmark nor are any system or other details on how the benchmark was carried out provided.
[4] and [5] are better. Problem there is you can't compare some of the benchmarks. [6] which compares the 2 doesn't seem to show the benchmarks, no idea why. However while I can't work out a way to link to this directly, if you go [7] and choose 'select individual CPUs' you can then add 'Intel' 'Pentium Dual-Core Mobile' 'T2390' 'LF80537GE0361' (only one) then 'add to selected' then choose 'Intel' 'Core Duo' 'T2400' 'LF80539GF0342M' (only one) then again 'add to selected' you can then 'show available benchmarks' to compare the two. From my look there, it was mostly as I expected, the T2390 generally won, usually by a tiny bit sometimes by more but the T2400 did win on occasion primarily tests of memory bandwidth. Bear in mind benchmarks are not always that useful in telling you how the processor performs unless your purpose with the CPU is to run those benchmark. Also the systems details are provided and it's clear both systems are different. It's also unclear as in so many benchmarks how many repetitions were done and the system details don't tell you anything about versions particular driver versions (likely to be significant in games or otherwise where the GPU is used).
In other words not a definite answer by any means but all this does agree with my belief before I looked at any benchmarks. And I should clarify these were the first 2 benchmarks I came across, I didn't discard any. Note that in any case the average performance difference if you use a multitude of applications is unlikely to be more then 10-20%
BTW are you sure the sockets are the same? Intel socket types always give me a headache but I've had a nagging feeling these may not be the same and some of the stuff I saw in my results hasn't helped.
Nil Einne (talk) 22:14, 19 March 2011 (UTC)[reply]

Nil Einne - perhaps you can explain what the improvements would be for the first system, as Finlay disagrees based on numbers alone. Magog the Ogre 2 (talk) 21:41, 19 March 2011 (UTC)[reply]

Also, this site's benchmark says the 2390 (i.e., the first one) performs better. Magog the Ogre 2 (talk) 21:45, 19 March 2011 (UTC)[reply]

Um, none of this really matters, because your processors won't go into that socket, as far as I can see. According to my Googling results, the mPGA478MT is a socket M, whereas the PGA478 is a socket P -- similar, but not identical. Looie496 (talk) 21:52, 19 March 2011 (UTC)[reply]
If you want to know the difference between the Core 2 Duo and Core Duo lines, have a look at any decent review of the Core 2 Duo when it was introduced. I'm not sure that FM actually disagreed with my point since it seems likely he never saw it due to the EC and it's not apparent he was aware that the first one was Merom/Core 2 Duo whereas the second is Yonah/Core Duo Nil Einne (talk) 22:16, 19 March 2011 (UTC)[reply]

Right you are. Thanks Looie496. Magog the Ogre 2 (talk) 21:55, 19 March 2011 (UTC)[reply]