C++ version for new Intel super multicore processor?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • rollerbladegirl
    New Member
    • Jan 2020
    • 69

    C++ version for new Intel super multicore processor?

    I have been reading about Intel having a multi-core processor that has a lot of cores and I think that it might be programmable.

    Any experience along this subject? I do not want official reports, but rather actual experience reports.

    Someone at Intel might have reported to someone at a product showing about this. What have you heard?

    Specifically, and above all in this question is what version(s) of C++ are these supposed to work with?

    I have heard that they are backwards compatible and maybe directly programmable cpu's. If so, then back to the question: What version(s) of c++?

    Thanks.
  • dev7060
    Recognized Expert Contributor
    • Mar 2017
    • 656

    #2
    Someone at Intel might have reported to someone at a product showing about this. What have you heard?
    Maybe it can be better answered by the people related to this field. I wrote programs for Intel 8085 and 8086 to understand the internal architecture. Here are my two cents.

    ...I think that it might be programmable.
    What do you mean when you say "it might be programmable"? Several definitions of microprocessor state,
    "It is a programmable multipurpose silicon chip...."
    "Microproce ssor is a multipurpose, programmable, clock-driven, ...."

    ...and maybe directly programmable cpu's
    Please elaborate on what do you mean by "directly programmable CPUs".

    ...what version(s) of C++ are these supposed to work with?
    Only C++ standards are given by the Committee. Compilers are made by third parties. They release it for both 32-bit and 64-bit processors. And these are the standard architectures that are used today. When compiling the source code, object code is produced which is specific to a particular CPU architecture.

    Apart from this, getting the best out of a processor depends on the application itself. An app consisting of tasks that can be fragmented for parallel computing -> works more efficiently. Say for example: The expression 10 + (2 * 4) %4 + (4 * 8) can be executed in parallel and the results can be combined later on. On the other hand, there are math problems where the output of one works as an input for the other. In this case, serial computation is done. Hence, can't use multiple cores in parallel here. In the background, the whole task is performed using various CPU scheduling algorithms like First Come First Serve (FCFS), Round-robin scheduling, Fixed priority pre-emptive scheduling, etc. There is also a concept of pipelining in which simultaneous execution of instructions takes place in a pipelined processor. GCC can be run in a pipe with the command
    $ gcc -pipe
    This command will pipeline the compile stages.

    Choice of language matters as well. There are languages that support concurrent programming and languages that support parallel programming. C++ can be used with OpenMP API as a parallel library.

    Windows 10 supports the number of cores based on the processor architecture. Windows 8 has the capability to support a maximum of 32 cores on 32-bit versions and 256 cores on 64-bit versions.

    Refer to manual/documentation for more: https://software.intel.com/en-us/articles/intel-sdm

    Comment

    • rollerbladegirl
      New Member
      • Jan 2020
      • 69

      #3
      Thank you dev7060 .

      What do you mean when you say "it might be programmable"?
      It is what I heard. It seemed to be reported as a new thing, as though it was not before, or as though it was a special to be noted as unique. Also, I heard that it was (or is to be) open source programmable. I wanted more elaboration without leading the post responder. Many times official reports and reiterations of "official" reports have been misleading. I wanted the truth of what seemed to be a vague claim to greatness. It was a continuation of the first part of the sentence "I have been reading about Intel having [...]". I am looking for experience backing up details.

      Back to your response: Thank you. You did not answer my question, but you did supply valuable explanations that someone else might not have known. Even though the link to a manual/documentation was against my request ("I do not want official reports, but rather actual experience reports."), I appreciate the offer, and someone else later might find it useful. In conjunction, your "two cents", as I see it, was worth far more. I have read maybe thousands of posts on various group sites, and I have found various tangential responses that are fact filled to have been uniquely insightful and helpful. Thank you.

      I am still looking for the answer of actual direct experience reports.

      Thank you dev7060 .

      Comment

      • dev7060
        Recognized Expert Contributor
        • Mar 2017
        • 656

        #4
        As it was a theoretical post rather than a straight-forward coding issue (that can be answered to the point), I pushed the topic off-track. In fact, this is the first time I have done so while answering. Should have considered that the OP may not be interested and wants the specific type of answer she is looking for. I will keep this thing in mind for future posts. There's always something new to learn.

        I missed the part that the OP didn't want the official reports. Probably I was lost in the train of thoughts while responding. I provided a general reply because the post lacked clarity to me. That's why I also mentioned in the beginning that this could be better answered by someone related to this field. Another thing to learn here, to not throw in the 2 cents everywhere.

        Pity that my reply couldn't help a bit and rather provided "valuable explanations that someone else might not have known". I wish you the best for what you're looking for.

        -Dev

        Comment

        • rollerbladegirl
          New Member
          • Jan 2020
          • 69

          #5
          Your response has prompted me to ask another question! I am typing it in now.

          Comment

          • SmithAnchorWork
            New Member
            • Mar 2020
            • 18

            #6
            I would guess,
            not officially,
            C++11 since beyond that seems to be viewed by most people (other than Mr. Stroustrup) as far beyond their capacity to use correctly, and Intel (I guess maybe) is producing primarily for commercial gain.

            C++11 seems to be about as advanced as common industry can currently handle.

            Stroustrup, like Einstein, does not seem to be waiting for others to catch up, but going forward. I expect that Intel is way behind, at least partially because their products (commercially) have to be usable by current programmers.

            It would be really nice if Intel would post a comment about this.

            Intel makes the cpu's and Intel makes other types of chips that motherboards (etc.) are built around. But, if a program can not be easily written by current programmers to utilize the most recent C++ levels, then the extra effort by Intel is un-utilized, and thus might not be worth the investment by Intel.

            Thus, un-officially, my guess is C++11, with maybe some higher level capability added.

            Comment

            Working...