- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I apologize if this is a commonly asked question, but I was not able to find an answer by searching the forums. I am porting an established commercial project to Visual Studio 2008 with the commercial versions of the Intel C++ compiler 11.0 and TBB 2.1, and have run into a snag with TBB's requirement of using only the dynamic versions of the C/C++ runtimes. The project currently relies on a number of other libraries that all use the static runtimes.
I understand the need to put TBB in a DLL to ensure there is only one copy of it running on a system for scheduling purposes etc., but why are there not two versions of the DLLs that are linked with the static and dynamic versions of the C/C++ runtimes, respectively?
Also,I understand that there is a theoretical risk in mixing, say, the dynamic C/C++ runtimes linkedin TBB with the static ones used by the rest of my project, and I get the TBB warning message in the build output when I try to do this . . . but it does work. What are the practical risks of proceeding with a mixture of this kind? Does anyone out there have any experience with bad outcomes?
Thanks,
Paul
I apologize if this is a commonly asked question, but I was not able to find an answer by searching the forums. I am porting an established commercial project to Visual Studio 2008 with the commercial versions of the Intel C++ compiler 11.0 and TBB 2.1, and have run into a snag with TBB's requirement of using only the dynamic versions of the C/C++ runtimes. The project currently relies on a number of other libraries that all use the static runtimes.
I understand the need to put TBB in a DLL to ensure there is only one copy of it running on a system for scheduling purposes etc., but why are there not two versions of the DLLs that are linked with the static and dynamic versions of the C/C++ runtimes, respectively?
Also,I understand that there is a theoretical risk in mixing, say, the dynamic C/C++ runtimes linkedin TBB with the static ones used by the rest of my project, and I get the TBB warning message in the build output when I try to do this . . . but it does work. What are the practical risks of proceeding with a mixture of this kind? Does anyone out there have any experience with bad outcomes?
Thanks,
Paul
Link Copied
3 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - paultomographix.com
I understand the need to put TBB in a DLL to ensure there is only one copy of it running on a system for scheduling purposes etc., but why are there not two versions of the DLLs that are linked with the static and dynamic versions of the C/C++ runtimes, respectively?
Also,I understand that there is a theoretical risk in mixing, say, the dynamic C/C++ runtimes linkedin TBB with the static ones used by the rest of my project, and I get the TBB warning message in the build output when I try to do this . . . but it does work. What are the practical risks of proceeding with a mixture of this kind? Does anyone out there have any experience with bad outcomes?
Also,I understand that there is a theoretical risk in mixing, say, the dynamic C/C++ runtimes linkedin TBB with the static ones used by the rest of my project, and I get the TBB warning message in the build output when I try to do this . . . but it does work. What are the practical risks of proceeding with a mixture of this kind? Does anyone out there have any experience with bad outcomes?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for your reply Robert. Dynamic runtimes it is.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Statically linked TBB is indeed works (it's not very difficult to compile it in that mode - just define few macros). Hovewer I am not calling anybody to use such mode, because it's indeed undocumented. I'm only hoping that TBB team will not break this feature in the future :)
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page