Running a single thread on two cores

Are current architectures supported to support the same thread on multiple cores of the same system? What problems will be involved in such a situation?

+4
source share
5 answers

Not that I knew.

A thread can be stopped running again on another kernel, but the thread itself cannot work in parallel.

If you have code in a thread that can run in parallel, you should split it into two threads.

+4
source

This will actually slow down the flow. Each time a thread switches kernels, it is necessary to transfer all the state of the previous kernel. Ideally, the thread will remain on one core.

What benefits do you think of running on multiple cores?

+2
source

No, I do not think that such a thing exists.

+1
source

This does not exist because the hardware does not allow it, but it is a bottleneck that could theoretically be eliminated with some ingenuity from Intel.

0
source

Basically you ask, do sequential instructions automatically parallelize? There are many ways to implement parallel execution with various levels of efficiency based on workload. This can also happen at different levels, on ΞΌarch (related to your question), ISA, OS, etc.

If I can guess correctly and try to answer what I think is your question. This is theoretically possible, but not implemented on commercially available commercial equipment. Consequently, many higher-level methods for parallelization.

0
source

Source: https://habr.com/ru/post/1302468/


All Articles