Release Notes for release of Copyright 2013-2016 Intel Corporation All Rights Reserved US Revision: 1.0 World Wide Web: http://www.intel.com
Legal Disclaimer Legal Disclaimer You may not use or facilitate the use of this document in connection with any infringement or other legal analysis concerning Intel products described herein. You agree to grant Intel a non-exclusive, royalty-free license to any patent claim thereafter drafted which includes subject matter disclosed herein. No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document. All information provided here is subject to change without notice. Contact your Intel representative to obtain the latest Intel product specifications and roadmaps. The products described may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. Copies of documents which have an order number and are referenced in this document may be obtained by calling 1-800-548-4725 or by visiting: http://www.intel.com/design/literature.htm Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and/or other countries. *Other names and brands may be claimed as the property of others. Copyright 2016, Intel Corporation. All rights reserved. Release Notes 2
Contents Contents 1 Introduction... 4 2 Changes... 5 2.1 New features... 5 2.1.1 Using host as the sink for streaming operations on Windows... 5 2.1.2 New logging mechanism... 5 2.1.3 Intel MKL 64 bits support... 5 2.1.4 COI & Intel MKL dynamic loading... 5 2.1.5 Independent release and github upload... 5 2.1.6 Sink-side kernel incorporated into hstreams_source library... 6 3 Known issues and limitations... 7 3.1 Using host as a target... 7 3.2 Extended buffer properties... 7 4 Deprecated functionality... 8 4.1 Functionality related to emitting messages... 8 5 Removed functionality... 9 5.1 hstreams_emitmessage... 9 5.2 libhstreams_sink.so... 9 Release Notes 3
Introduction 1 Introduction The Hetero Streams Library is a library that supports task concurrency on heterogeneous platforms. The concurrency may be across nodes; within a node for small matrix operations; and in the overlapping of computation and communication, particularly for tiled solutions. It relieves the user of complexity in dealing with thread affinitization, offloading, memory types, and memory affinitization. The formal name of this product is Hetero Streams Library, and the casual name is hstreams. Release Notes 4
Changes 2 Changes 2.1 New features 2.1.1 Using the host as the sink for streaming operations on Windows With Intel MPSS 3.6 release hstreams library provided functionality that enables the use of streams on the host physical domain. With the current release, treating the host as the sink is enabled under Windows. 2.1.2 New logging mechanism With new logging mechanism, the user is able to set up log output in 2 different dimensions: level e.g. ERROR, WARN and type of information. The minimal level output can be set using hstreams_cfg_setloglevel. The info type mask can be set using hstreams_cfg_setloginfotype. For more details Please refer to hstreams_userguide.doc 2.1.3 Intel MKL 64 bit support The user has the ability to use either 32- or 64-bit Intel MKL functions e.g. hstreams_app_dgemm(). This setting can be changed using hstreams_cfg_setmklinterface(). 2.1.4 COI & Intel MKL dynamic loading COI (Coprocessor Offload Infrastructure, part of the Intel MPSS package) & Intel MKL are now loaded dynamically. Therefore the dependencies of hstreams_source library will not show either of them. All errors related to loading these libraries will be provided at the initialization phase, via the logging mechanism. 2.1.5 Independent release, github, and downloads As of the 1.0 release of the hstreams library, it is separate from Intel MPSS package. hstreams library binaries will be available on 01.org webpage. The link is provided on the Intel MPSS download page or it can be found under https://01.org/heterostreams-library, in the Downloads section. Release Notes 5
Changes The github https://github.com/01org/hetero-streams webpage is regularly updated with the most recent hstreams library source. This is where users will be encouraged to contribute to this open source project. 2.1.6 Sink-side kernel incorporated into hstreams_source library With Intel MPSS 3.6 release hstreams library has deprecated libhstreams_mic.so. Currently this functionality is incorporated into hstreams_source.so (or dll under Windows) binary. Release Notes 6
Known issues and limitations 3 Known issues and limitations 3.1 Using host as a target The following app initialization APIs below, hstreams_app_init() hstreams_app_init_domains() do not yet automatically make use of resources on the host. Use of host resources is supported with the core APIs, below. The value of the physical domain ID for the host as source is HSTR_SRC_PHYS_DOMAIN, and this should be used in the APIs below. hstreams_init() hstreams_getavailable() hstreams_addlogdomain() hstreams_streamcreate() 3.2 Extended buffer properties Support for a memory type other than HSTR_MEM_TYPE_NORMAL is not provided and the corresponding API hstreams_alloc1dex() will return a HSTR_RESULT_NOT_IMPLEMENTED error code if provided with an erroneous memory type in the buffer properties structure. Further, support for the HSTR_BUF_PROP_AFFINITIZED is not provided and the corresponding API hstreams_alloc1dex() will return a HSTR_RESULT_NOT_IMPLEMENTED error code if provided with buffer properties structure with this flag set. Release Notes 7
Deprecated functionality 4 Deprecated functionality 4.1 Functionality related to emitting messages Due to the creation of a new and improved logging mechanism, the APIs and structures listed below that are related to the old logging functionality is marked as deprecated: APIs: hstreams_getverbose() hstreams_setverbose() Structures: HSTR_SEVERITY HSTR_INFO_TYPE (partially) Please be aware of that next release might remove deprecated functions and structures. Release Notes 8
Removed functionality 5 Removed functionality 5.1 hstreams_emitmessage hstreams_emitmessage function pointer is now removed from HSTR_OPTIONS structure. 5.2 libhstreams_sink.so As previously announced, libhstreams_sink.so (dll) is now removed from the hstreams redistributable package. 5.3 hstreams_init and hstreams_app_init* on Windows Due too new internal APIs versioning mechanism following functions were removed from hstreams_source.dll binary interface (only on Windows): hstreams_init hstreams_app_init hstreams_app_init_domains Those functions are still available in hstreams API (For more information please refer to hstreams headers). Release Notes 9