• 凤凰城框架的开发在微软研究,是一个框架,用于发展中编译器,以及作为发展工具,用于程序分析、测试和优化,以用作为后端,为未来编译器的技术。

    凤凰城的提供c2.exe 编译器后,其它的股份有视觉C++、处理分析,优化和代码生成uniprocessors像x86处理器。

    目标Phoenix4MultiCore是扩大凤凰城的编译工作,作为一个自动并编译器而产生的代码,用于多核处理器等x86处理器。

    这将需要输入作为序的源代码写在一些编程语言(即支持通过凤凰城)和产生的二进制可以在多核心。 这可以通过加入某些模块(称为"插"在凤凰城的技术)在凤凰城的编译器的后端。

    这些插件将做一些分析的依赖,转换和将分区IR到各种执行线(例,这些线可以执行的)。 时机代码(二)所产生的后采取后通过的Windows操作系统,操作系统将分发线程之间不同的核心。

  • फीनिक्स ढांचे में विकसित Microsoft अनुसंधान, एक ढांचे के विकास के लिए compilers के रूप में अच्छी तरह के रूप में विकसित करने के लिए उपकरण के लिए कार्यक्रम विश्लेषण, परीक्षण और अनुकूलन, के लिए इस्तेमाल किया जा सकता बैकएंड के रूप में भविष्य के लिए संकलक प्रौद्योगिकियों Microsoft से है ।

    फीनिक्स प्रदान करता है c2.exe संकलक बैकेंड, जो यह शेयरों Visual C++ के साथ, संभाल करने के लिए विश्लेषण, अनुकूलन और कोड पीढ़ी के लिए uniprocessors तरह x86 प्रोसेसर है ।

    उद्देश्य के Phoenix4MultiCore है का विस्तार करने के लिए फीनिक्स संकलक काम करने के लिए के रूप में, एक ऑटो-parallelizing संकलक और उत्पन्न करने के लिए कोड के लिए मल्टी कोर प्रोसेसर की तरह x86 प्रोसेसर है ।

    यह इनपुट के रूप में एक अनुक्रमिक स्रोत कोड में लिखा कुछ प्रोग्रामिंग भाषा (द्वारा समर्थित है कि फीनिक्स) और उत्पादन एक द्विआधारी जो कर सकते हैं चलाने के लिए पर कई कोर है । यह किया जा सकता है जोड़ने के द्वारा कुछ मॉड्यूल (बुलाया "प्लगइन्स" में फीनिक्स प्रौद्योगिकी) में फीनिक्स संकलक बैकएंड ।

    इन plugins करना होगा कुछ निर्भरता विश्लेषण, परिवर्तनों और विभाजन आईआर में विभिन्न निष्पादन धागे (जैसे कि इन में से कुछ धागे पर अमल कर सकते हैं समानांतर में). जब मशीन कोड(बाइनरी) द्वारा उत्पन्न बैकएंड लिया जाता है पर विंडोज ओएस, ओएस वितरित करेंगे धागे के बीच अलग अलग कोर.

  • Phoenix framework developed at Microsoft Research, is a framework for developing compilers as well as for developing tools for program analysis, testing and optimization, to be used as the backend for future compiler technologies from Microsoft.

    Phoenix provides the c2.exe compiler backend, which it shares with Visual C++, to handle analysis, optimization and code generation for uniprocessors like x86 processors.

    The objective of Phoenix4MultiCore is to extend the phoenix compiler to work as an auto-parallelizing compiler and to generate code for multi-core processors like x86 processors.

    It will take input as a sequential source code written in some programming language (that is supported by Phoenix) and produce a binary which can run on multiple cores. This can be done by adding some modules (called “plugins” in phoenix technology) in the phoenix compiler backend.

    These plugins will do some dependence analysis, transformations and will partition the IR into various execution threads (such that some of these threads can execute in parallel). When the machine code(binary) generated by the backend is taken upon by the Windows OS, the OS will distribute the threads among different cores.