0

I am currently studying/working on arm processors and I came across their big.LITTLE architecture that uses Multiple processors for more efficiency

I've worked with compilers too and I was wondering do compilers require added support for such an architecture or mostly it generates code for a single instruction set that is used by all the processor and the kernel is responsible for scheduling tasks on different processor for efficiency

This question might be vague and I clearly do not have much idea about the same any help/ideas at all will be really helpful

Thanks

lava_07
  • 83
  • 1
  • 7
  • you looked at the arm documentation yes? where the instruction sets are defined for these cores? what part did you not understand? – old_timer Jul 01 '20 at 14:44
  • Yes I did but the documentation describes each processor separately as in each processor has separate documentation the part that I am interested in is the architecture that uses 3 different processor in tandem and if I am to write a compiler backend for it would it require support for all 3 processors – lava_07 Jul 01 '20 at 15:12
  • in the core documentation it tells you which architecture that core is based on and in that is the ....architecture and from that what is common and what isnt... – old_timer Jul 01 '20 at 15:21
  • basically you are looking at armv7 (aarch32) with maybe aarch64, but I would also have to look. a few seconds of googling covered that they were cortex-a cores... – old_timer Jul 01 '20 at 15:22
  • gcc, llvm, etc are going to support the arm architectures almost all of the work is on the developer not the tools to take care of the feature of this big.little thing. – old_timer Jul 01 '20 at 15:23
  • yes, I am talking about the new cortex-a cores that use the armv8 architecture.. so basically the compiler won't need added support for the big.little feature then? – lava_07 Jul 01 '20 at 15:29
  • 1
    what does the compiler have to do with any of this? they compilers already support aarch64 and aarch32, this big.little thing is high level as in operating system, has little to do with the compiler other than the operating system design has to choose to require the code be compiled for both so that the os can pick or choose when swapping cores what mode, or the os can require that the least common denominator is used so that only one binary/module is used and the os can the choose/switch whch cores. – old_timer Jul 01 '20 at 16:53
  • 1
    so what you are asking is an operating system question, which operating system which version, etc. and when you tried building a kernel driver on that operating system what did you find? – old_timer Jul 01 '20 at 16:54

0 Answers0