New answers tagged

0

Floating-point units are not standardised. Your typical Intel processor has at least two very very different ones built in. The results of floating-point operations are mostly standardised, but not completely. But designing a floating-point unit is absolutely trivial compared to designing a GPU. GPUs are similar in complexity to CPUs, and CPUs are in no way ...


0

A couple issues come to mind: Synchronization/Communication overhead In order to seamlessly transition from CPU to GPU code you need to communicate with the GPU. The GPU additionally has to be available(aka not rendering the screen), and all instructions on the CPU side of things need to retire/finish executing. Additionally you need to make sure that any ...


2

There are a few options: if a page is in memory then it cannot be on disk as well, As such there is no duplication and the issue doesn't exist. there is more than just the MMU's pagetable to hold paging information. This mean that the kernel has an auxiliary data structure that says where the page is on disk and the MMU page table only tracks what is in ...


4

Yes, that's correct. Assuming the speed of the cache doesn't change, a cache miss takes a fixed amount of time, and if the number of instructions per time unit increases, then more instructions get delayed because of the cache miss. Modern processors try different methods to counteract this. Obviously you can use bigger caches which may lead to fewer cache ...


2

It means your book is either (a) misleading, (b) poorly worded, or (c) wrong. Case (a) would be if the text is talking about how relational operators are implemented in CPU architecture. In many if not all architectures, performing a compare instruction sets processor flags for the output of both the signed and unsigned comparison, and then conditional jump ...


1

I don't think these things are usually treated as a single topic in either research or education, but there are quite a few adjacent topics that are relevant. I'll list some here, starting with... I/O-complexity One perspective on the algorithmic analysis of computer storage, memory and caches is the field of I/O-complexity or external memory algorithms. ...


1

Vectorization and asynchronous parallelism are not exactly comparable. Its like comparing apple and orange. Have a look at Difference between parallel, concurrent and asynchronous. Vectorization uses the support for different vector instruction in modern processors. For e.g. Intel support AVX512 and AVX256 instructions. Here 512 and 256 are number of bits. ...


0

If you read "machine epsilon" you really need to look up the definition that your book uses for it. It is all over the place. "The largest relative error" is very unlikely to be the "machine epsilon": All computers including tablets and phones in my possession have floating point arithmetic following the IEEE 754 Standard, and ...


0

There are computer memory implementations allowing destructive read-out, only, starting with (ferromagnetic) core memory and (single-transistor)DRAM: these transfer information from an array of low cost memory cells to some static circuitry, provide it at the output(s) and usually write it back into that array cell. Without that write-back, I guess one could ...


1

This question illustrates a lack of understanding of fundamentals. What does moving mean!? The RAM stores data in transistors. Do you want a little robot to pick up the specific transistors you want out of the RAM chip and deliver them to the CPU? I hope it is obvious why that is not possible. Instead, an electronic circuit (which those transistors are part ...


1

To be able to improve CPI and the speed-up factor you need to enable the pipeline. The programmer can help improve CPI but it is best to leave that to an optimising compiler and clever CPU architecture. The simulator's built-in compiler offers some help in reducing the CPI, for example loop unrolling, constant folding, identifying code dependencies, etc. In ...


0

Typically source code is stored in a file on your hard drive or SSD drive. Usually you have backup copies in all kinds of places, and you use source code control to store more copies in more places, together with the ability to get older versions or newer versions to your files at any time. When compiling, the source code files are read like any other files. ...


1

When you use normal multiplication, multiplicand and multiplier are represented using (Sign + Magnitude) representation. So effectively 1101 is +(13) in Decimal and (1110) is +14 in decimal as they represent the magnitude. Sign bit would be separate. So the result is (+13)*(+14) = +182 which is 1011 0110 in binary. When you use booth multiplication, operand ...


0

In practice, you won't find any processor where different pipeline stages take different amounts of time - that would be a nightmare to implement. In practice, every pipeline stage takes one clock cycle. "Latency" is the time from the start of the instruction to the point where the result can be used. For example, it takes some time from starting ...


0

Assuming IEEE754 64 bit format: You have an 11 bit exponent field, a 1 bit sign field, and a 52 bit mantissa field. The exponent field can have values from 0 to 2047. An exponent field of 0 is reserved for denormalized numbers, and an exponent field of 2047 is reserved for infinity and Not-a-number. You could say that +Infinity is the largest value, but I ...


0

Consider a very common modern computer, an iPhone. The ROM needs to be capable of downloading at least the first parts of the operating system and perform cryptographical checks that the downloaded code is genuine and not forged, and then write it to permanent memory in encrypted form. That thakes quite a bit of code.


3

Yes, or maybe no, depending on your definitions. Commonly some small 8-pin SPI NOR-Flash ROM is used, for example my slightly older motherboard has a W25Q64FV. This replaces the older non-flash based EEPROM technology since Flash is cheaper, but it fills the same role, and often the flash versions are still called EEPROM. Since it's Flash memory, you could ...


2

Reason it out: a) Disk-access is way too complicated a process to hard-wire into the CPU. Not to mention that disks from different manufacturers will have different procedures for disk-access, so there is no point in hard-wiring it in advance anyway (what happens to your CPU chip sailes if the disk manufacturer goes out of business?). b) Therefore the ...


Top 50 recent answers are included