computer-architecture

GPU - System memory mapping

最后都变了- 提交于 2020-04-07 15:43:29
问题 How system memory (RAM) is mapped for GPU access? I am clear about how virtual memory works for cpu but am not sure how would that work when GPU accesses GPU-mapped system memory (host). Basically something related to how Data is copied from system-memory to host-memory and vice versa. Can you provide explanations backed by reference articles please? 回答1: I found the following slideset quite useful: http://developer.amd.com/afds/assets/presentations/1004_final.pdf MEMORY SYSTEM ON FUSION APUS

What decides which structure a process has in memory?

主宰稳场 提交于 2020-01-16 04:30:07
问题 I've learned that a process has the following structure in memory: (Image from Operating System Concepts, page 82) However, it is not clear to me what decides that a process looks like this. I guess processes could (and do?) look different if you have a look at non-standard OS / architectures. Is this structure decided by the OS? By the compiler of the program? By the computer architecture? A combination of those? 回答1: Related and possible duplicate: Why do stacks typically grow downwards?.

How does the computer recognise that a a given number is in its Two's comeplent form?

不羁岁月 提交于 2020-01-07 03:36:09
问题 I understand what the Two's complement is and what it is useful for. What I'd like to know is how does the computer decide that the number is in its Two's complement form? How and when does it decide that 1111 1110 is -2 and not 254? Is it at the OS level of processing? 回答1: The computer will already be expecting the data to be in (or not in) two's complement form (otherwise there wouldn't be a way of telling if it is - 2 or 254). And yes, that would probably be decided at the OS-level. You

Bitwise Operations Help/Suggestions

六眼飞鱼酱① 提交于 2020-01-05 09:36:09
问题 Alright, I'm not looking for answers or anything like that. So on recent exams, when I've been asked to perform some relatively simple bitwise operations, I just can't seem to get the job done. Given 30 minutes to an hour, I could flush it out, but with 10 minutes or less, I just get stuck. For example, i was recently asked to write a small function, if x > y,return 1, else 0. I couldnt for the life of me provide an answer. After the exam, I went home and wrote out the answer, but it took me

MIPS being byte addressable

廉价感情. 提交于 2020-01-05 05:58:12
问题 I have been watching a lecture at the following URL explaining MIPS ISA. http://www.youtube.com/watch?v=DVFwXvxyC38&list=PLD8AF625E53B0691F&index=4 According to my understanding so far: for MIPs 32-bit, the main memory has a 32-bit address input bus, each slot in memory holds 8-bit, so each address can refer to 8-bits of memory (which is why its byte addressable); since register size is 32-bit, "words" in main memory start at every 4th byte (so that each word is 4 consecutive slots in memory

Available pagefile size / virtual memory

我与影子孤独终老i 提交于 2020-01-04 21:32:24
问题 What is the difference between Process.PagedMemorySize64 and PagedSystemMemorySize64 . I could not understand this clearly. Also , I am looking for a way to find out how much of the paging file is still availalbe. Do I have to loop through all the processes and sum up the PagedMemorySize64 for each one and subtract this from the total size of paging file ? 回答1: PagedSystemMemorySize64 is the total number bytes of operating system kernel memory in the paged memory pool attributed to the

Making sense of cpu info [closed]

China☆狼群 提交于 2020-01-04 15:27:45
问题 Closed. This question is off-topic. It is not currently accepting answers. Want to improve this question? Update the question so it's on-topic for Stack Overflow. Closed 5 years ago . I generally know that the more the number of processors the more processes (watching a movie, playing some game, running firefox with youtube playing a Simpson's episode, all simultaneously) you can have simultaneously going without your computer slowing down. But I want to know how to make sense of the linux

Intel Reset Vector

烂漫一生 提交于 2020-01-04 14:28:37
问题 Possible duplicate: Software initialization code at 0xFFFFFFF0H When the system boots up (Intel), reset vector is at address 0xFFFFFFF0 (16 bytes less than 4G) (as mentioned in above link). That address contains FAR JUMP to where the BIOS is. I read the answer, comments and referenced link, also did some searching, but still cannot understand how 32-bit address can be map to 16-bit (Real Mode)? My confusion is that in this link: http://www.starman.vertcomp.com/asm/bios/index.html, author

Intel Reset Vector

自古美人都是妖i 提交于 2020-01-04 14:28:10
问题 Possible duplicate: Software initialization code at 0xFFFFFFF0H When the system boots up (Intel), reset vector is at address 0xFFFFFFF0 (16 bytes less than 4G) (as mentioned in above link). That address contains FAR JUMP to where the BIOS is. I read the answer, comments and referenced link, also did some searching, but still cannot understand how 32-bit address can be map to 16-bit (Real Mode)? My confusion is that in this link: http://www.starman.vertcomp.com/asm/bios/index.html, author

Determining Architecture In Makefile.am using Automake

一笑奈何 提交于 2020-01-04 13:16:25
问题 To see what I am trying to do see below: My question is how can I conditionally set AM_CPPFLAGS or my_lib_la_CPPFLAGS inside of my Makefile.am. Such that when configure is run the right CPPFLAGS are set? Currently I am doing something to the affect of: lib_xml_wrapper_la_CPPFLAGS = -I../../ UNAME_S = $(shell uname -s) UNAME_P = $(shell uname -p) ifeq ($(UNAME_S),Linux) lib_xml_wrapper_la_CPPFLAGS += -DLINUX ifeq ($(UNAME_P),x86_64) lib_xml_wrapper_la_CPPFLAGS += -D AMD64 endif ifeq ($(UNAME_P