Wikipedia:Reference desk/Archives/Computing/2015 April 30

Computing desk
< April 29 << Mar | April | May >> May 1 >
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.


April 30 edit

Trouble archiving English pages of Lycee Giono of Turin edit

Hi, everybody! I think the website of the Lycee Giono Turin has a strange setup that complicates archiving its English and Italian content.

From the English webpage one can click "School" and get a history page in English which shows the URL as http://lyceegionoturin.it/?Tab=2. Checking the [view-source:http://lyceegionoturin.it/?Tab=2 Source code] while on the English page shows English text. However, when I try to use the Wayback Machine or webcitation.org to archive this page, it only shows me French.

How do I get the "real URL" so I can get the content in English and in Italian archived? WhisperToMe (talk) 09:22, 30 April 2015 (UTC)[reply]

That is the "real URL" - but the "?" character implies that the server provides processing to dynamically deliver page content. In this specific instance, we can question whether that design-choice was a good call, because the translated content is probably mostly static. The Internet Archive FAQ on dynamic page content indicates that the WayBack Machine will not create an archive correctly for some such websites. You could export the page content yourself by saving the page content: this export option is available in most popular web browsers.
Ultimately, this problem stems from the heuristic used by the Internet Archive: they arbitrarily assume that a query string implies dynamic content, and all other URL fragments correspond to static content. There is no explicit guarantee that this behavior corresponds to every web server configuration on the internet, but it is one way that the archive project simplifies the task of discovering and exporting content.
Nimur (talk) 09:36, 30 April 2015 (UTC)[reply]
Thanks for the explanation! I'm trying to have it archived so Wikipedia users may access the content in the future. I guess I would have to manually save the French and Italian pages to the computer... It also means linking to these pages would be frustrated. WhisperToMe (talk) 11:04, 30 April 2015 (UTC)[reply]

5juu4i84yui5 — Preceding unsigned comment added by 193.236.57.97 (talk) 14:34, 30 April 2015 (UTC)[reply]

How to check if memory is limiting system speed? edit

It's possible to tell whether CPU or GPU are limiting a process using utilities such as Windows Task Manager and GPU-Z but in my case neither are maxed out yet Kerbal Space Program is unable to simulate in real-time once crafts reach a certain size (part count). Is there a way to check whether memory speed is the limiting factor?

This type of software profiling is not easy to do in general - especially if you only have access to the software in binary form.
How experienced are you at using debugger and profiler features on Windows platforms? Typically, this type of work is done by programmers (e.g., the creators of the game software), using a tool like Microsoft Visual Studio, or a competitive free- or commercial tool. MSDN Magazine published an article, Find Application Bottlenecks with Visual Studio Profiler, overviewing how this would be done.
If you really really want to approach this problem as a black-box, you probably won't get very far: without getting under the proverbial hood, it's nearly impossible to disentangle memory-performance from all the other reasons why software runs "too slowly."
Nimur (talk) 16:11, 30 April 2015 (UTC)[reply]


As far as I know, time the CPU spends blocked on RAM is counted as CPU time, so a RAM-bound task would appear to be CPU-bound. Note that the CPU (or RAM) may be the bottleneck even if the total CPU usage is as low as 1/N, where N is the number of logical cores. Even the usage of each individual core may be as low as 1/N in this situation, because the scheduler shuffles threads between cores. I think that KSP is mostly single-threaded ([1]), so this could easily be your problem. -- BenRG (talk) 18:04, 30 April 2015 (UTC)[reply]
There are two aspects to this though - one is how the SPEED of the memory affects performance (which is indeed exceedingly hard to assess) but the other is the AMOUNT of memory - which also affects performance. When memory is full, there is less space for the caching of files, hence more disk access - and there may also be swapping of memory out onto the hard drive - which also results in severe performance hits. Both of those things can easily be determined by watching for disk activity when programs are not be loaded and files are not being opened. Adding MORE memory in those circumstances is often an easy way to get more speed.
If you're doing something that's graphically intense and you don't have enough GPU memory then data from main memory is being continually shuffled into and out of the Graphics card - and that imposes a huge hit on main memory bandwidth too. If your PC has a GPU on the motherboard, it may not even have it's own memory - and then doing any graphics at all will put a hit on main memory and doing things like reducing your screen resolution can make things go faster!
Memory speed is a pain to understand because it's all wrapped up in bus bandwidth, memory alignment, cache size, cache speed, cache coherency - and all of that gets hugely wrapped up in issues of multitasking. Even when you have the source code, the sexxy tools and the skills to untangle it - it's a total pain to do.
SteveBaker (talk) 19:07, 30 April 2015 (UTC)[reply]