Slashdot Mirror


User: Cassini2

Cassini2's activity in the archive.

Stories
0
Comments
726
First seen
Last seen
Profile
(view on slashdot.org)

Comments · 726

  1. Re:Better than the UK on New Zealand Reintroduces 3 Strikes Law · · Score: 1

    If you were a business, any employee doing unauthorized activity could shut you down. That wouldn't be nice.

    Actually, a few summer students could conceivably take out the government's ISP connection. That would be funny ...

  2. Good Point! on Nouveau NVIDIA Driver To Enter Linux 2.6.33 Kernel · · Score: 1

    Good Point! I was a little confused by the reference too.

  3. Re:Why? on Electric Mini Cooper Has Rough Start · · Score: 1

    It was designed to drive at speeds commonly used by commuters.

    No one anywhere designs a car for optimal commuter use. They design it to get the lowest possible score on the EPA tests. They even have special setup procedures, driving procedures, and dynos to ensure the cars will get the lowest possible EPA test scores. Notably, the highway test is done at 90 km/h (about 55 mph), however most states have 70 mph speed limits, and people speed. In Ontario, the speed limit is 100 km/h, and average traffic speed is 112 km/h. The cars perform optimally at 90 km/h because that is the speed of the test.

    Cars are explicitly designed to only pass the EPA test. My Saturn immediately consumes more gas as soon as the temperature drops below a certain level. I think the ECM has an algorithm to the effect of: "if the temperature less than 5 degrees Celsius, then switch to richer fuel mixture." The manufacturers blatantly ignore fuel economy at low temperatures, because there is no EPA test for it.

    It is well known in automotive circles that it is almost impossible to drive a modern car in a manner that meets the fuel economy specifications on the EPA tests. The local car salesman states it as: "Fuel economy is guaranteed to never exceed the EPA ratings." Informally, dealers know never comment about real-world fuel consumption and EPA ratings, as you could get stuffed with a false advertising lawsuit. If the customer has a lead foot, then they won't reach the EPA test numbers. Additionally, no warning lights are present on cars to warn drivers of poor driving habits. Finally, there are many variations in car equipment, and even inside the manufacturing tolerances of the components inside the engine. It is quite likely that some cars will never be reach the EPA fuel economy numbers, even if dynoed on exactly the same equipment, with the same procedures, and following the same EPA mandated calculations. For instance, I think it is typical that the EPA tests are done with a modified gas tank, and for some vehicles the weight of the combined weight of the gas and driver would influence the test results.

  4. Re:Problem Solved! on Microsoft Investigates Windows 7 "Black Screen of Death" · · Score: 5, Funny

    Turns out it was just affecting a bunch of old people who kept forgetting to turn their monitors on.

    I just put a painting in front of the monitor, and then take it away before my kids come over. They think it is so cool I'm into computers.

  5. Theremin / Mod Parent Up on Dell Defect Turning 2.2GHz CPU Into 100MHz CPU? · · Score: 1

    For those that don't get the reference, a theremin is an instrument that senses movement through electric fields. Interestingly, the principle is similar to what happens during random computer failures when the electronics are being influenced by complex thermal noise and electrostatic effects. Thus, showing that new computers can still suffer from the same old problems.

  6. If you wanted a REALLY simple solution ... on Facebook Putting Batteries On-Board Its Servers · · Score: 1

    Run the servers on 240 (VAC) / 280 (VDC). Almost every computer power supply converts the incoming power 120/240 (VAC) into a 320 (V) or so internal bus via a voltage doubler for 120 (V), and a bridge rectifier circuit at 208-240 (V). This means with NO MODIFICATIONS you can power almost every single server on the market from 280 (VDC), with no problems. Additionally, you can use a few bridge rectifiers, which are very common and inexpensive parts, to automatically select from a 240 (VAC) line and a 280 (VDC) DC bus. This completely eliminates the DC to AC conversion in the UPS.

    Why is this not done? This will not work if any load in the system expects AC, like every Air Conditioning Unit, every AC motor, and every "regular" transformer. Most consumers can't tell which loads are DC capable, and as such, the safety standards authorities severely discouraged UPS manufacturers from outputting DC waveforms or "almost" DC / square wave outputs. However, if one had the ability to specify which power supplies one was purchasing, one could run everything on 280 (VDC) for backup and use completely standard computer parts.

  7. Re:On board batteries fine, but 277 volt? on Facebook Putting Batteries On-Board Its Servers · · Score: 5, Informative

    277 (V) corresponds to the line to neutral voltage of a 480 (V), 4 wire power distribution system. 480 (V) systems are fairly common in industrial settings in the United States. The major disadvantage of using 480 (V) to power a server, is you can't use a UPS. UPS on 480 (V) systems are rare and expensive, hence the reason why Facebook wants the batteries inside the server.

    I'm pretty certain you really don't want to run servers from the 277 (V) line to neutral voltage of a 480 (V), 4 wire system (3 lives, one neutral). On a 4 wire system, you have 4 wires and you can lose any one of them. If you lose the neutral, your servers could be running of 480 (V) instead of 277 (V). They will be destroyed.

    Losing the neutral is a relatively common failure in 3 phase systems, as many 3 phase systems are 3 phase, 3 wire with a fake neutral/ground connection that is often mistaken for a neutral. This central connection is purely to prevent the 3-wire system from drifting off of off ground, like when lightening strikes, which is common in a big high-voltage system. When operating a 10,000 (V) to 480 (V) step down transformer (the transformers inside the metal fenced enclosures), a small amount of electric slippage to occur between the windings. 1% of 10,000 (V) is 100 (V). Faults can also occur in big loads, like motors. A 10% ground fault on a 480 (V) 400 (A) motor, could be 200 (V) at 40 (A). These voltages/powers are nothing for a 480 (V) motor, but are enough to cause significant damage in a computer with a 1.2 (V) processor. This mismatch is why you should never trust the ground/neutral connection on a high-voltage supply line. It is for safety, not for powering computer equipment, electronic equipment, and electronic motor drives. After having replaced tens of thousands of dollars of electronic motor drives, my rule is: make the supply 480 (V) 4 wire, and all the loads 480 (V) 3 wire. A 3 wire load with no neutral can withstand problems with the neutral. A 4-wire load powering electronics line-to-neutral will not withstand neutral failures.

    If you are going to use 480 (V), you really want to use 480 (V) 3 wire AC (3 live wires, no neutral). If any one power circuit is lost, nothing really bad happens. Also, power semiconductors are readily available for 480 (V), because all the industrial motor drives require them. As such, your power supply will be cheaper.

  8. Re:Lets all use the decimal point on Moving Decimal Bug Loses Money · · Score: 1

    I propose we get rid of some useless ASCII character and use that for decimal point. How about 0x7f (DEL)

    0x7F corresponds to the delete key and/or the backspace key in many different computer systems. See ASCII Character Chart. As the wikipedia page points out, there is a degree of ambiguity between delete and backspace, and that causes enough chaos when dealing with different pieces of software.

    I am absolutely certain making the delete key a decimal point would cause complete accounting chaos. I typed "100.00" but the computer says "10000". We're broke!!!

  9. Re:Closures are probably really necessary. on Haskell 2010 Announced · · Score: 1, Interesting

    And once you have closures, you need garbage collection.

    You may have explained why Haskell will never work for certain HPC applications. Essentially, for really high-speed CPU performance, static variables are essential. A static variable has the nice property of being at an immutable memory location, which enables all sorts of optimizations. Additionally, once it is shown that a memory location is fixed, and not accessed by another function, then important additional optimizations are allowed, including optimizing out instructions involving constants.

    Modern compilers can only optimize x = a + b * y when a and b are simple constants (often 1 or 0), and x, and y are simple variables (like double precision multiplies). If x and y are arrays, or classes, modern compilers won't unroll the loops because it could take a very large amount of time to complete the compile. However, if the loops were unrolled, then the resulting program would execute much quicker.

    This subtlety is very important in real-time control systems, where speed is paramount. The mathematicians generate an "optimized" control equation by writing y = A B C x D E, where A, B, C, D, and E are matrices, and x and y are vectors. The PC based simulators are very slow in computing y, because of all the large matrix multiplications. However, if you expand the equation out into the individual multiplies, it turns out the compiler can make huge simplifications, which is why the math people do all of those matrix multiplies. These simplifications only happens when one expresses the actual multiplication and additions to the C compiler as simple statements, like double precision multiplies of static, constant, and function local variables. The C compiler doesn't know how to optimize loop matrix multiplies.

    These optimizations only work if key loops in the program are unrolled at compile time. If the language is so complex, that the compiler cannot even eliminate all dynamic memory allocations, then it is impossible to unroll key loops. A limited language like FORTRAN with MPC/HPC extensions can become very fast relative to Haskell, as the compiler has much more freedom to do optimizations.

    Simply put: a compiler designed for a limited problem set (FORTRAN) can be much faster than a fully general programming language for any possible program (Haskell).

  10. Re:AMD's Idea of "Launch" on AMD Radeon HD 5970 Dual-GPU Card Sweeps Benchmarks · · Score: 1

    I bought a 5870 shortly after launch with no issues. After the reviews came out and circulated, one of the salesman at the same store said "Who did you kill to get a 5870?"

    It is immediately before Christmas, all hot new products are in short supply. Also, I think the suppliers were blowing out inventory at the end of August, which temporarily reduced prices and also reduced inventory for the Christmas season. I was comparing pricing at the end of August to current for the identical and similar product. DRAM modules prices are up 78%, for the exact same modules. Processors are in short supply, and pricing is up. OCZ Vertex hard drives are in short supply, and the price is up 24%. Motherboard pricing is up 38%. What are you expecting?

  11. Re:"Is it possible to BSoD food?" on Former Microsoft CTO Builds Kitchen Laboratory · · Score: 1

    This is Microsoft we are talking about. They gave us the Blue Screen of Death.

  12. Re:Energy T Y P E matters -- HOT water on The Jet Fighter Laser Cannon · · Score: 1

    Those same 702 joules only heat 10 mL of water 17'C (30'F). Not even enough for a burn!

    I think you nailed the key problem. Any laser energy hitting human skin is likely to be absorbed as heating water. The human body is 60% water, and water requires a great deal of energy to boil and do significant damage. Essentially, if the person remains still, the laser beam will cause serious surface burning. The natural reaction for a person being burned is to move. If the person moves, the laser may only do superficial damage. If the person is wearing clothes and moving, getting hit by a 750W laser might equate to a nasty soldering iron or welding burn. It might hurt, but it won't slow down an enemy soldier in combat.

  13. Re:New form of taxes! on City Laws Only Available Via $200 License · · Score: 1

    It was a bit of a shock to me, when I realized that I would pay my lawyer $10,000, to have someone else get divorced. They filled out my name on the marriage certificate incorrectly ...

    Apparently, the paperwork on the marriage certificate must always match the divorce certificate. However, I'm still not clear if I got married in the first place. I guess "All's well that end's well."

  14. Re:Patentable? on Amazon Patents Changing Authors' Words · · Score: 1

    I was thinking exactly that. Additionally, in spy circles, I am certain that at least someone has tried to write a computer program to do this too. They may have even wrote a computer program to automatically change other computer programs, helping to prevent ultra-secret source and executable code from going rogue. Unfortunately, the spooks don't document their tools, hence Amazon can patent it.

    This falls in the category of ultra-obvious inventions. The really tough problem is doing the text changes in such a manner that the author would approve, as to not alter the deeper meanings and sub-texts in the text. However, with modern AI techniques, detecting and modifying unimportant sentences is a computational challenge, but not insoluble. Patents have an exceptionally low standard. For a patent, you just need an invention that works. You don't need an invention that works well, or even acceptably well. As such, the person that truly solves the problem well, can look forward to having to license Amazon's patent. :-(

  15. Re:Exterminate!, exterminate! on Robot Controlled By Human Brain Cells · · Score: 2, Informative

    Doctor Who references to Robots controlled by organic brain's include:
    - Mr. Sin, aka: the Peking Homunculus, a robot controlled by a pig's brain, from the Talon's of Weng Chiang. Mr. Sin probably matches the experiment in the article the most closely, because he was a robot controlled by a portion of an animal's brain.
    - Morbius, from the Brain of Morbius. Does everyone remember the talking brain in a jar?
    - The Genesis of the Daleks shows that Dalek's are fully formed aliens and can kill people without being inside the "Travel" machines. As can be also be seen in the early episodes that "made" Doctor Who, the Daleks.
    - The Attack of the Cyberman shows clearly how the Cyberman evolved by replacing body parts with metal parts, until they were just human brains controlling robots. Of course, the new series updates the brains in a robot with more nasty implications.
    - Master. In the Planet of Fire, a miniaturized Master remotely controlled the robot Chameleon.
    - Rani. In Time and The Rani, the Rani made a organic brain into a giant Beowulf cluster of the world's brightest minds. Her goal was to destroy the universe and a variety of other evil. Trouble ensued when the Rani realized that the Doctor was slightly crazy ...

    Other movie references are:
    - Saturn 3 - a movie where someone grows a brain in a jar and puts it in an 8 foot killer robot. Oh, did I mention that the personality imprint for the brain comes from a killer?
    - Robocop proof that good things could possibly happen if someone attaches a human brain to a robot, and the sequel, Robocop 2, that shows bad things are what normally occur.

  16. Why can't we have fast Web Applications? on Star Guard — an Old-School Platformer Done Right · · Score: 1

    I watched the video, and it clearly showed how Web applications are still slow. I had Java applets working and deployed in industrial applications by 1997, but they were slow. Flash is somewhat quicker, but why is everything in JavaScript?

    It is 2009. We are almost have 15 years of mass customer acceptance of the Web Browser. Why isn't the web at least at World of Warcraft level of graphics? Crysis level of graphics? Able to run super-pi? quickly?

    When are web applications going to exceed the speed of a well-programmed 8-bit microprocessor from 1972?

  17. Re:GUIDs. Lots of GUIDs. on Microsoft Leaks Details of 128-bit Windows 8 · · Score: 1

    There is a market for this, especially for selling Windows to entities utterly obsessed with tracking every object on Earth (basically, big corporate marketing departments and governments). Governments want to put GUIDs in banknotes. Corporations want to put GUIDs in EVERYTHING. Some of them already do.

    To really number every object on the earth, the government really needs to use 256-bit GUIDs. There are about 1.3E50 atoms on the earth, so 256-bit identifiers are really needed.

    Of course, the computer to keep track of all this would be bigger than the sun, but when has that stopped the government?

  18. Re:CPU? on Microsoft Leaks Details of 128-bit Windows 8 · · Score: 2, Informative

    I haven't heard of any 128-bit CPUs for micros even being discussed, let alone prototyped. in fact, the only 128-bit CPU I can find any mention of is in IBM's System/370. Anyone have any info about 128-bit microprocessors.

    The x86 line permits chaining of basic binary arithmetic operations to any level of complexity. However, why would we want 128-bit operands? Double precision arithmetic is 64-bits, and there isn't a significant clamor for more precision in scientific circles. (More speed = yes, Vector Operations = yes, More precision = no).

    Computer hardware has supported wider data buses than CPU bus widths for some time now. Wide data buses are useful for vector operations, and to quickly fill CPU caches. Nvidia has a 512-bit GPU. I think IBM has at least experimented with 512-bits for the Power Platform. Currently, an external data bus wider than 128 bits remains expensive. However, internal to the CPU, the Core i7 processor uses cache line widths of 128-bits and 256-bits, so someone might argue the Core i7 is a 256-bit processor. In the past, Intel has adopted misleading marketing practices with regarding data bus sizes.

    Programmers care about the unit word size for key operations. 64-bits is likely to be sufficient for all practical uses for some time now, particularly for PC usage. Essentially, a 64-bit processor can directly address 18 exa-bytes of hard drive storage to the byte level. Barring massive breakthroughs, for the near future, multi-exabyte supercomputers/compute clusters will be scarce.

    Additionally, 1 exa-byte of storage is only useful in a cluster. At a 10 GB/sec (80 Gb/sec), which is faster than pretty much any single storage device currently in existence, it takes 3 years to move 1 Exabyte of data. That's a long time to back up a hard drive. Even DDR-3 2000 RAM requires multiple devices to reach 10 GB/sec transfer rates, and who wants 3 years worth of data sitting in RAM? As such, 64-bit addressing is only useful in the context of supercomputers/compute clusters that have the massive parallelism required to read and write Exabytes of data quickly.

    If Microsoft expects serious personal computer uses for 128-bit addressing by the time Windows 9 ships, Microsoft must be planning on Windows 9 shipping sometime next century.

  19. Re:That would make... on Microsoft Leaks Details of 128-bit Windows 8 · · Score: 1

    That would also make Windows a 0x10000000bit wrapper around a 0x1000000bit implementation of a 0x100000bit extension for a 0x10000bit patch to an 0x1000bit operating system, originally coded for a 0x100bit microprocessor, written by a 0x10bit company, that can't stand 0x1bit of competition.

    I'm not sure if those constants are supposed to be hex, octal or binary. No matter how I look at it, I sure hope you aren't programming!

  20. Re:Whatever happened to.... on London Stock Exchange Rejects .NET For Open Source · · Score: 4, Informative

    As for GC. Well, unless you can develop a system that eliminates memory allocation altogether and uses no threading while doing it. Good GC based environments (like CLR/Mono) are almost always faster than straight memory allocation. I highly recommend you research it... and if you're going to try and prove it with 5 lines of code, don't waste your time. That's not a real world test.

    Speaking as a real-time programmer, GC and memory allocations are enormously damaging to system performance. You really do need to switch to an almost statically allocated approach, with no memory allocations in real-time execution segments. The x86 architecture has special instructions to make the use of Base Pointer, Stack Pointer, and Index Pointer based memory access usable. If you ever program on a less powerful processor, like an 8-bit PIC microcontroller, you would quickly discover that indirect memory accesses have significant timing penalties. Direct memory access, where data is at fixed locations in system memory, can be accessed in a single instruction on almost all architectures.

    The second problem is that dynamic memory allocation has an unbounded maximum execution time. It can also be incredibly difficult to prove that memory accesses do not fragment, and that the program can execute in bounded memory space. Proving finite execution times and finite resource issues are major issues for a real-time system. In soft real-time systems, some forgiveness is tolerable. However, if you are in a language like C# and discover that one block of code is rate limiting because of memory allocation issues, how do you overcome the problem? In C/C++, you can statically allocate the memory blocks and work around the problem. In Java/C#, the issue is pretty much the end of the project.

    Test it instead for example with an XML parser that generates a DOM tree and then deletes/dereferences it.

    Simply put, you can't have algorithms like that in programs with bounded maximum execution times. What happens if the XML file is corrupt? Excessively large? A pathological case deliberately designed to take down the London Stock Exchange? An unbounded tree based on a customer provided data file is a bug in a LSE style application.

    Whenever I am looking at code blocks that need to execute quickly, the first thing I look for is blocks of code with unbounded memory, or unbounded execution times. C# encourages using these blocks of code. Real-time software requires using a small subset of available computer science techniques. Language and library support for this must be present.

  21. Re:And by all developers you mean on "Side By Side Assemblies" Bring DLL Hell 2.0 · · Score: 4, Interesting

    That's not a Visual Studio C++ issue, it's the way Windows memory management works. No matter what IDE/compiler/CRT you use, memory allocated by one dll cannot be (reliably) freed by another. It has to be freed by the same dll that allocated it.

    If you use GlobalAlloc() to allocate the memory, then GlobalFree() always frees it. (I'm quoting from my nightmares here.)

    The problem happens in VC++. The new operator eventually calls malloc() which eventually calls GlobalAlloc(), through chains of function calls that are fairly non-obvious, unless you read the disassembly or the source. GlobalAlloc() is a based Windows function, so every DLL links to the same system DLLs. The new and malloc calls are in the Microsoft Visual C++ libraries. Those libraries are loaded on a per DLL/EXE basis. As such, different VC++ DLLs can link to different VC++ run-time libraries, containing identical (or nearly identical) new and malloc functions but with different data areas.

    Additionally, malloc() is optimized so it doesn't always call GlobalAlloc() whenever new memory is required. malloc() has it's own list of memory allocations, and that is where the problem is. A malloc() from one DLL with it's own data memory area knows nothing about another DLL's data memory area. As such, the free() call can't possibly succeed when the data was allocated in a different DLL.

    Unfortunately, the torture doesn't end there. There are only two ways around the problem. Firstly, you can never pass memory allocations across DLL boundaries. Unfortunately, for some applications this doesn't work, for example COM and ActiveX controls. Alternatively, you can create a new type of memory handler to handle inter-DLL memory allocations. Microsoft created the IMalloc API for this reason. However, it is impossible to make the IMalloc API work across all possible failure modes. Also, IMalloc is not used by default for either new, delete, malloc() or free(). As such, the IMalloc API does not completely solve the inter-DLL issues, and introduces new problems of its own.

    The IMalloc API is at the heart of COM, which is also at the heart of C#. Normally, C# might be a good language for soft real-time, long life systems. However, if any bug exists in any control using the IMalloc API, then all of the CLR can become unstable. As such, C# is the home of my biggest programming disaster ever. A program that is less reliable and runs thousands of times slower than the equivalent in C. In C/C++, some freedom exists to properly handle memory allocations, and data types are checked at compile time. In COM, it is almost impossible to understand all of the complexities of all of the memory allocations and data type conversions. As such, it is both easy to make mistakes with COM, and very difficult to work around them.

    ActiveX/COM/DLLs are the root source of many serious security and reliability issues inside Windows. Historically, reliability and security issues were at least traceable to an executable. Now, all bets are off. ActiveX is present in Windows Explorer, Office and Internet Explorer, making it very difficult to effectively lock down the system. As such, system requirements for "a solid application" on "Microsoft Windows" represent an oxymoron. The result of these contradictory requirements is the application separation. Big and small applications use web servers running embedded Operating Systems or Linux (printers, Google, Bing), and display the results on a web browser on Windows.

    In short, this bug is not a side effect of the Windows Memory Allocation API: GlobalAlloc() and GlobalFree(). It is a side-effect of DLLs under Microsoft Windows, and importantly the C Run-Time Library DLL implementation. As a result of the attempted workarounds, it has probably had as big of an effect on Windows as the old Intel 8088 segmented memory architecture.

  22. Re:I'm sure it didn't help. on Did Chicago Lose Olympic Bid Due To US Passport Control? · · Score: 3, Interesting

    Incorreect. there are at least 20 entry points at the northern border that are unmanned and simply have a phone there asking you tell them you are crossing the border.

    In times past, that might have used to be the case. Nowadays, people near the border are reporting that those "defenceless" border posts aren't completely defenseless. If you cross-over and do not call, then you get pulled over by U.S. police or border patrol shortly afterwards. Granted, it isn't perfect security, but it is enough of a deterrent to make sure you use that phone.

    The serious drug runners have other routes that they use. The U.S.-Mexico border has scary levels of security, and both drugs and illegal immigrants get through. The U.S. Navy patrols the sea routes into the U.S., and both drugs and illegal immigrants get through. Additionally, on a smaller scale, the U.S. can't even keep drugs out of its own jails.

    More crime occurs across state lines than across the Canada-U.S. border. From a statistical point of view, the U.S.-Canada border is the safest border in the world. After a certain point, I think you need to ask: With all the security proposals, is anyone actually getting protected?

  23. Re:Pencil Test? [Revised Link] on Scientists Decry "Horrifying" UK Border Test Plan · · Score: 1

    If they are going to go down that root surely the Pencil Test is faster and cheaper? [broken link]

    I think you might be searching for this Pencil Test.

    The scary thing is the Pencil Test might actually be more reliable than a DNA test to determine a person's nationality. Once you get into these poorly correlated correlational variables problems, the results can be very difficult to anticipate and are never reliable, except in small-size sample tests.

  24. Re:They used the wrong classic car on '09 Malibu Vs. '59 Bel Air Crash Test · · Score: 1

    If they'd of used Christine, the outcome may have been a lot different.

    They cut self-repairing feature from the video. Apparently, the IIHS isn't ready to accept that cars kill people, people kill people.

  25. Re:I swear to you on Canadian ISPs Fight Back, Again · · Score: 1

    The $1800/month number was from a number of years ago, and it was for a specialized (non-internet) dedicated connection. I was forbidden from attempting to negotiate a better rate. Apparently, Bell caused the U.S. office so many difficulties, that everyone refused to make any changes on the line for fear of Bell.

    I know, we were being ripped off. However, if an entire factory depends on that T1, what are you going to do?