Aleksandra Lelevic
email: aleksandra.lelevic@ifpen.fr

Christophe Geantet

Chantal Lorentz

Maxime Moreaud

Vincent Souchon
email: vincent.souchon@ifpen.fr

Determination of Vacuum ultraviolet detector Response Factors by hyphenation with Two-dimensional Comprehensive Gas Chromatography with Flame ionization detection

Keywords: PIONA -Paraffin, isoparaffin, olefin, naphthene, aromatic Vacuum ultraviolet spectroscopy, relative response factors, two-dimensional comprehensive gas chromatography, quantitative analysis

GC×GC is an established technique, employed for the characterization of complex samples.

Broad band vacuum ultraviolet absorption spectroscopy detector has recently attracted a lot of attention as it is a universal detection technique characterized by good selectivity but also ease of use and amenability to coupling with GC×GC. Vacuum ultraviolet spectroscopy is particularly interesting due to the possibility of performing spectral decomposition for species that coelute in GC analysis. This detector has quantitative capabilities, however not all species absorb vacuum ultraviolet radiation the same. Unfortunately, vacuum ultraviolet relative response factors for compounds are not always available. Methods to rapidly measure vacuum ultraviolet relative response factors and generate a large database that would allow calibration free quantitative analysis of complex mixtures are therefore of great interest. In this work, a universal methodology which permits rapid measurement of vacuum ultraviolet relative response factors is reported. It involves flow modulated GC×GC with dual vacuum ultraviolet and flame ionization detection. In this set-up, flame ionization detection is employed as a quantitative reference allowing to scale vacuum ultraviolet responses of investigated compounds. This approach was validated by flow measurements and by comparing relative response factors obtained for model compounds with literature data.

Introduction

Vacuum Ultraviolet (VUV) detector has recently attracted a lot of attention owing to its interesting properties. It offers qualitative information as almost all molecules absorb the vacuum ultraviolet radiation and have characteristic spectral signatures. Another interesting feature of VUV absorbance spectroscopy is the possibility of discrimination between isomers [START_REF] Skultety | Resolution of isomeric new designer stimulants using gas chromatography -Vacuum ultraviolet spectroscopy and theoretical computations[END_REF][START_REF] Fan | Gas chromatography-vacuum ultraviolet spectroscopy for analysis of fatty acid methyl esters[END_REF], small [START_REF] Bai | Permanent gas analysis using gas chromatography with vacuum ultraviolet detection[END_REF] and labile compounds [START_REF] Fan | Gas chromatographyvacuum ultraviolet spectroscopy for multiclass pesticide identification[END_REF] owing to their highly featured spectral signatures, while they traditionally pose a problem for MS detection. Spectral information can be ‗filtered' to extract the response in the most informative spectral ranges and discern compounds, for example saturates and unsaturates [START_REF] Bai | Comparison of GC-VUV, GC-FID, and comprehensive two-dimensional GC-MS for the characterization of weathered and unweathered diesel fuels[END_REF]. In terms of quantification, vacuum ultraviolet detector follows Beer-Lambert law. As Beer-Lambert law is linear and additive, linear spectral mixture estimation algorithms can be used to investigate the composition of mixtures [START_REF] Walsh | Rapid Analysis and Time Interval Deconvolution for Comprehensive Fuel Compound Group Classification and Speciation Using Gas Chromatography-Vacuum Ultraviolet Spectroscopy[END_REF]. However, quantification by using VUV is not completely straightforward since different types of compounds exhibit different responses. For example, same mass of aromatic species absorbs almost three times more, depending on species, in the 125-240 nm range when compared to saturated compounds [START_REF] Walsh | Rapid Analysis and Time Interval Deconvolution for Comprehensive Fuel Compound Group Classification and Speciation Using Gas Chromatography-Vacuum Ultraviolet Spectroscopy[END_REF]. Hence, VUV responses need to be corrected by using appropriate VUV relative response factors (RRFs). VUV RRFs depend on absorption cross section of molecules and they are not dependent on system features, contrary to MS RRFs for example.

VUV RRFs have been already successfully used to perform PIONA analysis of gasoline samples [START_REF] Walsh | Rapid Analysis and Time Interval Deconvolution for Comprehensive Fuel Compound Group Classification and Speciation Using Gas Chromatography-Vacuum Ultraviolet Spectroscopy[END_REF]. In that study, a specific VUV response factor was attributed to each of the five PIONA (Paraffins, Isoparaffins, Olefins, Naphthenes, and Aromatics) classes. PIONA analysis was also performed for liquid hydrocarbon streams [START_REF] Dunkle | Quantification of the composition of liquid hydrocarbon streams: Comparing the GC-VUV to DHA and GCxGC[END_REF], demonstrating advantages of VUV in quantifying coeluting species when compared to conventional detailed hydrocarbon analysis. Weber et al. [START_REF] Weber | Determination of Hydrocarbon Group-Type of Diesel Fuels by Gas Chromatography with Vacuum Ultraviolet Detection[END_REF] performed mass percent quantification of saturates, mono, di, and polyaromatics in diesel type samples. García-Cicourel and Janssen [START_REF] García-Cicourel | Direct analysis of aromatic hydrocarbons in purified mineral oils for foods and cosmetics applications using gas chromatography with vacuum ultraviolet detection[END_REF] developed a GC/VUV method for the measurement of the total level of aromatic hydrocarbons in purified mineral oils. VUV response factors in these studies were also class based. However, until today a universal methodology that would allow accessing individual VUV RRFs in more complex samples for which standards are not commercially available has not been reported. Being able to reliably measure VUV RRFs is of utmost importance for building a database for calibration-free quantitative analysis of complex mixtures and automated spectral decomposition algorithms. Some efforts have been made to derive VUV absorbance spectra trough theoretical computations by using a variety of methods [START_REF] Skultety | Resolution of isomeric new designer stimulants using gas chromatography -Vacuum ultraviolet spectroscopy and theoretical computations[END_REF][START_REF] Schug | Vacuum ultraviolet detector for gas chromatography[END_REF][START_REF] Schenk | Analysis and deconvolution of dimethylnaphthalene isomers using gas chromatography vacuum ultraviolet spectroscopy and theoretical computations[END_REF][START_REF] Schug | Copper( i )-based oxidation of polycyclic aromatic hydrocarbons and product elucidation using vacuum ultraviolet spectroscopy and theoretical spectral calculations[END_REF]. Encouraging results have been obtained, however common consensus is that that improvements in computational methods are needed in order to obtain better agreement with experimental data.

For the analysis of complex volatile samples especially adapted is comprehensive twodimensional gas chromatography (GC×GC) [START_REF] Phillips | Comprehensive two-dimensional gas chromatography: a hyphenated method with strong coupling between the two dimensions[END_REF][START_REF] Dallüge | Comprehensive two-dimensional gas chromatography: A powerful and versatile analytical tool[END_REF][START_REF] Edwards | Comprehensive Multidimensional Chromatography[END_REF][START_REF] Fernandez | Chromatographie en phase gazeuse à deux dimensions : GC-GC et GCxGC[END_REF][START_REF] Prebihalo | Multidimensional Gas Chromatography: Advances in Instrumentation, Chemometrics, and Applications[END_REF][START_REF] Pollo | The impact of comprehensive two-dimensional gas chromatography on oil & gas analysis: Recent advances and applications in petroleum industry[END_REF][START_REF] Beens | Comprehensive two-dimensional gas chromatography -a powerful and versatile technique[END_REF][START_REF] Adahchour | Recent developments in the application of comprehensive two-dimensional gas chromatography[END_REF][START_REF] Edwards | Modulation in comprehensive two-dimensional gas chromatography: years of innovation[END_REF][START_REF] Nizio | Comprehensive multidimensional separations for the analysis of petroleum[END_REF][START_REF] Seeley | Recent advances in flow-controlled multidimensional gas chromatography[END_REF][START_REF] Meinert | A new dimension in separation science: Comprehensive two-dimensional gas chromatography[END_REF][START_REF] Mostafa | Optimization aspects of comprehensive twodimensional gas chromatography[END_REF][START_REF] Seeley | Multidimensional gas chromatography: Fundamental advances and new applications[END_REF]. Introduction of GC×GC has enabled achieving higher sensitivity but also an order of magnitude higher peak capacity when compared to 1D GC. For GC×GC different modulation systems are available. Among them, flow modulation has numerous advantages, as it is not costly, it does not require cryogen and it allows modulation for a wide range of analytes with very different boiling points.

Additional advantage of flow modulation is in the fact that it employs high 2D flows, which reduces the need for high pressures of make-up gas in the VUV instrument.

Vacuum ultraviolet broad band absorption spectroscopy has only recently been coupled with GC×GC for the first time [START_REF] Zoccali | Flow-modulated comprehensive two-dimensional gas chromatography combined with a vacuum ultraviolet detector for the analysis of complex mixtures[END_REF][START_REF] Gruber | Vacuum ultraviolet absorption spectroscopy in combination with comprehensive two-dimensional gas chromatography for the monitoring of volatile organic compounds in breath gas: A feasibility study[END_REF][START_REF] Gröger | A Vacuum Ultraviolet Absorption Array Spectrometer as a Selective Detector for Comprehensive Two-Dimensional Gas Chromatography: Concept and First Results[END_REF][START_REF] Wang | Comprehensive Two-Dimensional Gas Chromatography Hyphenated with a Vacuum Ultraviolet Spectrometer to Analyze Diesel-A Three-Dimensional Separation (GC × GC × VUV) Approach[END_REF]. Benefits of this hyphenation combine all the advantages of VUV with the high separation capabilities of GC×GC.

Owing to the properties of the VUV detector, the interest can be seen in devising a simple method which would allow accessing VUV RRFs for any kind of compound. This would allow straightforward and efficient building of large database which would in turn permit making the most of VUV capabilities for both qualitative and quantitative analysis. This is also important as the attribution of an identical response factor for a family of compounds applied in previous works does not consider the differences in absorption properties within families which can be significant. Thus, in this work, we describe a methodology to determine VUV RRFs thanks to a flow modulated GC×GC set-up involving simultaneous FID and VUV detection. This methodology can be applied to any compound of interest present in a sample, provided it is properly separated from the other compounds and correctly quantified by an FID detector, the latter being used as a quantitative reference allowing to scale VUV responses. As this hyphenation is reported for the first time in literature, possible discrimination effects have been thoroughly investigated, with the focus on 2D column flow splitting. Finally, the proposed universal methodology for deriving VUV RRFs has been evaluated on model compounds in order to demonstrate the validity of this approach.

Materials and methods

A mixture of normal alkanes containing: n-C 10 to n-C 28 (n-C 10 , n-C 12 , n-C 16 , n-C 18 , n-C 20 , n-C 22 , n-C 24 , n-C 26 , n-C 28 ) diluted in toluene was used for optimization and quantitative performance tests. Detailed composition of the test mix is provided in Supplementary material in Table S2. Mixture of assorted n-alkanes, i-alkanes, alkenes, cycloalkanes and aromatic species diluted in toluene was prepared by weighing individual species and used for calculation of VUV RRFs and method validation. Detailed composition of the test mixture is provided in Supplementary material in Table S3. All chemicals were of 99% or greater purity and were purchased from Sigma-Aldrich (St. Louis, United States). Hydrogen (99.9999% purity) and nitrogen (99.999% purity) gases were purchased from Messer France SA (Asnières, France).

GC×GC experiments were run on a Agilent 7890A gas chromatograph with Agilent G4513A autosampler and a G3486A CFT forward fill/flush differential flow modulator (Agilent Technologies, Inc., Santa Clara, CA, United States). The selected column set consisted of a DB-1 1 D column (100% dimethyl polysiloxane; 20 m, 0.1 mm ID, 0.4 μm; Agilent Technologies, Inc., Santa Clara, CA, United States) and a BPX-50 2 D column (50% Phenyl Polysilphenylene-siloxane, 3.2 m, 0.25 mm ID, 0.25 μm; SGE Analytical Science, Ringwood, Australia). Exact dimensions and shape of the modulator collection channel are not exactly known. However, according to literature, it was assumed that the volume of the collection channel is close to 35 µl and its length ~15 cm [START_REF] Agilent | A CFT Modulator User Guide[END_REF][START_REF] Giardina | Development and validation of a pneumatic model for the reversed-flow differential flow modulator for comprehensive two-dimensional gas chromatography[END_REF] with a circular shape.

Carrier gas was hydrogen. For all samples, 1 µl injections with a split ratio of 150:1 were performed on a Agilent multi-mode inlet equipped with a single taper liner with glass wool.

Injection port was heated to 300°C, then ramped to 330°C at 500°C/min, where it remained isothermal during 5 min. Initial inlet pressure was 26.86 psig (constant flow: 0.15 ml/min) and initial modulator pressure was 13.94 psig (constant flow: 25 ml/min, effective flow in the second dimension is actually lower as column outlet pressure is higher than 0 psig).

Temperature program was 50 °C (3 min) -325 °C (2.5 °C/min). Modulation period was set to 4.5 s, while different modulation injection times were tested. For simultaneous VUV and FID detection, GC effluent was fed into a SGE SilFlow™ GC three port splitter. Fused silica restrictors' (Agilent Technologies, Inc.) were used to direct the flows from the splitter towards the two detectors. VGA-101 (VUV Analytics, Inc., Austin, TX, United States) detector was employed. VUV conditions were as follows: wavelength range 120-430 nm, acquisition frequency 50 Hz, flow cell and transfer line temperature 325 °C, make-up gas pressure 0.35 psig. FID conditions were as follows: 325 °C, air flow 400 ml/min, hydrogen 35 ml/min and make-up gas (nitrogen) 25 ml/min, frequency 100 Hz. All analyses were performed in three replicates, with method blanks used between each run. Flow measurements were performed by using Alicat WHISPER MW Flow meter.

Agilent ChemStation B.04.03-SP1 was used for GC method control and FID data acquisition. VUVisionTM 3.0.1 software was used for VUV data acquisition. GC Image 2.7 software was employed for GC×GC chromatogram integration. Plug im! software [START_REF] Lelevic | plug im!‖ software module for GC×GC/VUV data[END_REF] module dedicated to GC×GC/VUV data was employed for GC×GC data visualization, baseline and noise correction and spectra extraction. For fluid circuit modelling, all calculations were performed in Microsoft Excel.

Results and discussion

3.1.GC×GC-VUV/FID experimental set-up

The instrumental set-up used for this study is depicted in Figure 1. GC×GC separation was performed with a classical non-polar / medium-polar column set which enables separation of hydrocarbons according to increasing carbon number (1 st dimension) and their polarity (2 nd dimension) and generates highly ordered 2D chromatograms with good orthogonality.

Regarding modulation, forward fill/flush differential flow modulation was employed. D column effluent was divided with the help of a three-way splitter towards FID and VUV detectors as shown in Figure 1. Such configuration allows to benefit from limited misalignment (retention time differences) between the two acquired signals and is more time efficient compared to two separate FID and VUV experiments. Restrictor lengths were chosen so as to direct the majority of the flow towards the VUV detector, since VUV detector is characterized by lower sensitivity when compared to the FID detector. Normally, low ppm LODs were reported for most compounds in the case of GC-VUV [START_REF] Lelevic | Gas chromatography vacuum ultraviolet spectroscopy: A review[END_REF]. However, in the case of GC×GC/VUV, high levels of noise have been observed which significantly decreases method sensitivity (see Figure S2 in Supplementary material). Final restrictor dimensions resulted in about 75 % of the carrier gas flow from the 2D column going towards VUV and 25 % going to FID. Further increase of the portion of the flow going towards VUV will not bring significant benefits in terms of signal intensity, however significant signal loss can be incurred on the side of the FID as the portion of the analyte going towards FID is only one quarter of the total amount. Forward fill/flush differential flow modulator involves a series of consecutive sampling and injection steps which are driven by the periodic switching of the three way solenoid valve receiving a supply of the carrier gas [START_REF] Agilent | A CFT Modulator User Guide[END_REF]. During the fill phase of the modulation, GC effluent coming from the 1 D column is entering into the modulator channel. In the next stage, this volume is quickly sent to the 2 D column by applying a high-pressure pulse at the head of the modulator channel. In terms of parameters of the modulation process, 1 D flow (0.15 mL/min, H 2 ) was chosen to obtain 3-4 modulations per peak on the first dimension, 2 D flow (25 mL/min, H 2 ) to minimize wraparound with maximal VUV response; and the modulation period of 4.5 s to maximize the space occupancy of the 2D chromatogram. Lower 2D carrier gas flow could be beneficial for VUV, as VUV is a concentration sensitive detector and its . response area is inversely proportional to the total flow in the flow cell. However, VUV features an addition of make-up gas whose purpose is to decrease the diffusion of analytes in the VUV flow cell. This make-up gas causes a dilution effect which decreases the analyte signal [START_REF] Liu | Is vacuum ultraviolet detector a concentration or a mass dependent detector?[END_REF]. In the VGA 101 instrument, make-up gas mass flow is rather constant for a certain make-up pressure set point (Table 2). Thus, in the case of the decrease of 2D flow, the dilution effect of the make-up gas becomes more important. This make-up gas dilution effect counteracts the effect of the 2D flow decrease. Thus, it was found that 2D flow below 25 ml/min did not result in signal area enhancement in our case. This high carrier gas 2D flow contributes to preventing band broadening that could originate from imperfect connections with restrictors. In our case no significant change in peak widths was observed for the case of dual detection when compared to single detection mode without the splitter. In dual detection mode comparable modulated peak widths were obtained for both detectors (up to 500 ms at the baseline).

As reported in our previous work [START_REF] Lelevic | Quantitative performance of forward fill/flush differential flow modulation for comprehensive twodimensional gas chromatography[END_REF], efficient modulation process occurs when fill and flush distances of the modulation channel are at their optimal value. We have previously demonstrated that the sum of modulator fill and flush distance should be equal to the length of the modulator channel ± 2 cm (15± 2 cm); and that the ratio of flush and fill distances should not be less than 2.5. If these conditions are fulfilled, GC effluent in the modulator channel is sent in a tight band towards the 2 D column and unwanted effects of 1 D column effluent carry over are avoided. With a similar methodology to the one described in our previous study; volumetric flow calculations were performed for the GC×GC-VUV/FID system (see details in Supplementary material in Section S2). Calculations have demonstrated that an injection time of 0.16 s should provide optimal fill and flush distances that ensure efficient modulation of each 1 D peak all along the oven temperature program. Table 1 summarizes calculated fill and flush distances for 0.12 s to 0.21 s modulator injection times.

It can be seen that in the case of 0.16 s injection time sums of modulation fill and flush distances at both oven low and height temperatures are closest to the target value 15± 2 cm and flush/fill ratio is the highest.

Calculations of the optimal modulator injection time were validated by injecting a mixture of n-alkanes from n-C 10 to n-C 28 with injection times varying from 0.12 s to 0.21 s, and by monitoring the evolution of the peak shape and n-alkane response volume. When VUV was employed, peak shape was more difficult to evaluate owing to higher background specific to this detector when high acquisition frequencies are employed. Hence, FID responses of the analytes were investigated for assessing the modulation efficiency. To illustrate possible quantitative losses of analytes, a quantity named response coefficient (RC) was introduced. It represents the ratio of the detector response area per unit mass for compound -i‖ and the response area per unit mass of reference compound (in our case n-C 18 is chosen as a reference). In this way, n-C 18 response coefficient is equal to 1 by definition, while response coefficients lower than 1 indicate that analytes are subject to response loss. Normally of 1±10% is taken as an acceptable range for RC.

Measured FID blob volumes and FID response coefficients for n-alkanes for all tested injection times are shown in Figure 2. Figure shows that the maximum response corresponds to 0.16 and 0.18 s injection times, the latter representing only 0.02 s deviation from the theoretical calculation findings mentioned in Table 1. Additionally, observation of chromatogram has demonstrated that the most optimal peak shape (in terms of tailing or fronting of peaks) along the entire n-alkane elution range was generated with these injection times. Good agreement between experimental results and calculations confirms that theoretical estimations can help to estimate optimal modulation conditions and save time on the method optimization. However, it can be seen that even with the optimized modulation process, a loss of heavier analytes is perceived. This can be because with the chosen columns and system set up the best modulation performance with maximized responses still contains certain quantitative discrimination effects, but also due to inlet conditions or due to flow splitting between the two detectors. To further investigate other possible discrimination sources inlet discrimination was first investigated.

3.2.Study on inlet discrimination

To evaluate if inlet discrimination can be observed in our experimental conditions, splitter was plugged on the VUV side, and the entire GC flow was directed towards the FID detector.

Inlet conditions were kept the same as for GC×GC experiments with VUV/FID dual detection. A weighed mixture of n-C 10 to n-C 28 standards diluted in toluene was injected and the observed response coefficients relative to n-C 18 were compared with theoretical FID response coefficients calculated according to ref [37] and normalized to n-C 18 . Figure 3, in blue, shows average response coefficients calculated for three repeated measurements. For all n-alkanes, response coefficients were in the acceptable range of 1±10%. Even if a moderate inlet discrimination is perceived for the longest linear alkanes, this does not fully explain the bigger loss of heavier analytes observed in the previous Section for FID in the dual FID/VUV detection configuration.

3.3.Flow considerations at the splitter

As no significant quantitative discrimination was observed at the inlet, next possible discrimination source to investigate was column effluent splitter, which directed the flow towards the two detectors.

Weighed mixture of linear alkanes from n-C 10 to n-C 28 was injected in the GC×GC-VUV/FID set-up and was analysed for selected optimised modulation conditions. In this case both FID and VUV response coefficients for n-alkanes were calculated. Obtained response coefficients are plotted on Figure 4 for both detectors. For VUV the same trend was observed as for FID, with a loss of response toward heavier analytes. Surprisingly, the response coefficients seem to be different for the two detectors which was confirmed by repeated measurements. Namely, aaccording to theoretical calculations FID response coefficients for n-alkanes in the investigated range are expected to be almost equal.

Regarding VUV response factors, it has been demonstrated that the excitation energy of nalkanes progressively decreases with the increase of carbon number owing to destabilization of the carbon chain [START_REF] Mao | Vacuum ultraviolet absorbance of alkanes: an experimental and theoretical investigation[END_REF]. However, as in the case of the FID, not a significant response difference is expected in the range of n-C 10 to n-C 28 in case of the absence of discrimination sources. Thus, according to theory, there should be no difference in response coefficients of n-alkanes for both VUV and FID.

To explain the observed differences for the two detectors, gas flow measurements were performed at the exits of both detectors for several oven temperatures. Results are reported in Table 2. It was observed that, owing to VUV detector transfer line and flow cell being at constant high temperature during the entire run, gas flow at the splitter directed to VUV increases during the run owing to flow resistance of the VUV decreasing in proportion with GC oven temperature increase. At the same time, the flow directed to FID progressively decreases with increasing GC oven temperature. The split ratio between FID and VUV changes from 26.1% of the total flow sent to FID for GC oven temperature equal to 50°C to only 20.8% at 325°C. Thus, due to the decrease of absolute mass going towards FID the response of analytes decreases. For VUV, the opposite would be expected but it has to be taken into the account that VUV is a concentration sensitive detector. Higher flows decrease the residence time of the same concentration of analyte in the VUV flow cell, thus causing decrease of the signal area. This counteracts the effect of the split change (theoretical considerations regarding analyte response area for the VUV detector are provided in the Supplementary material in Section S1). Based on the flow measurements, FID and VUV response coefficients that would be measured on this set-up for compounds having the same response on the detectors can be calculated. These are plotted in Figure 4 (see dotted lines).

The observed trends are in agreement with measured response coefficients for n-alkanes as the ratios between the VUV and FID response coefficients in two cases are the same (Figure 5). Different trend of the measured VUV and FID response coefficients when compared to the theoretical ones based on flow measurements (Figure 4) indicate that there are some discrimination effects present. These are primarily modulation effects (Figure 2B); however, all these effects (modulation, inlet, etc.) are identical for the two detectors, thus they ‗cancel out' in the final calculation of VUV RRFs as it will be demonstrated in the following Section.

3.4.Determination of VUV relative response factors with GC×GC-FID/VUV

VUV relative response factor is defined as the VUV mass relative response factor. It can be seen as a scalar if it comes from the measurement of the total absorbance in a given wavelength range but also as a reference VUV spectrum in the VUV range for a unitary mass of compound i. It is a constant for a given compound i and it is directly linked to its absorption cross-section. Measuring VUV RRF (scalar) or spectral RRF (spectrum) is of utmost importance for building a database for calibration-free quantitative analysis of complex mixtures and automated spectral decomposition algorithms.

Determining VUV relative response factors using FID as a quantitative reference with the GC×GC-VUV/FID set-up used in this work requires a clear understanding of the splitter behaviour and knowing precisely the evolution of the splitting of the 2 D carrier gas flow between the two detectors during the run. It can be shown (see Supporting Information Section S1 for the detailed calculations) that VUV RRFs for any analysed compound i relative to a chosen reference compound obey the following equation:

(

with and representing the measured areas for the FID and VUV, respectively for compound i or the reference analyte, and the relative response factors for the considered analyte and a temperature dependent correction factor accounting for flow splitting changes which is defined as follows:

(

where and represent the proportion of analyte i and the reference sent to FID at their elution temperature, is the total flow in the VUV cell at a given elution temperature.

The last two equations are fundamental on the way to obtain VUV RRFs for any compound with a GC×GC-VUV/FID set-up. Thanks to the FID detector, it is not necessary to know the exact amount of the analyte of interest in the injected sample in order to determine its VUV RRF, the FID response being used as a quantitative reference. It is also noteworthy to mention that discrimination before the entry of the splitter (for example inlet discrimination or unsatisfactory quantitative performances of the modulation process) has no influence on the VUV relative response factors determination since only depends on values and on the total gas flow in the VUV flow cell. In other words, all discrimination effects common to both detectors cancel out, the only effect remaining being related to flow splitting changes between the two detectors. Thus, to measure VUV relative response factor for a compound i, the only prerequisite is to know the elution temperature dependent correction factor and measure the areas of compound i and reference compound on both VUV and FID sides.

This correction factor was estimated from flow measurements and calculations according to equation 2. The corresponding correction factors are plotted in red on Figure 5. Values are comprised between 0.9 and 1.1 demonstrating that such a correction is mandatory to obtain accurate VUV RRF estimations with a dual detection system.

But this approach has also some drawbacks, owing to tedious gas flow measurements and to the difficulties related to estimation of the actual flow reaching the flow cell from GC and make-up gas portion involved. An alternative methodology consists in evaluating this correction factor through the measurement of FID and VUV areas for a mixture of n-alkanes and make the hypothesis in accordance with literature data that VUV and FID response factors for n-alkanes are constant. This approach was tested from ten replicates analyses of a mixture of n-alkanes. values were determined as the ratio of VUV response coefficient and FID response coefficient for elution temperature from 110°C to up to 300°C with a good repeatability (see Figure 5). A linear fit was applied to estimate correction factors for any oven temperature leading to appropriate correction function and opening the way to VUV RRF measurements at any elution temperature and for any compound. Similar results were obtained with this approach compared to the flow measurement approach.

Finally, it is also interesting to note that this methodology can be successfully employed in the case of GC-VUV/FID measurements since similar discrimination effects between the two detectors should be observed.

3.5.Test mixture analysis

VUV RRFs measurement methodology was validated through the GC×GC-VUV/FID analysis of a weighed mixture containing n-alkanes, i-alkanes, alkenes, monoaromatics, diaromatics and triaromatics diluted in toluene. Figure 6 shows the obtained VUV chromatogram (125-240 nm Avg.).

VUV RRFs in 125-240 nm range were calculated according to the described approach based on the previous injection of a mixture of linear alkanes. Average values obtained from three repeated analysis along with determined RSDs are provided in Table 3. Very good repeatability is obtained and determined VUV RRFs values are in good accordance with the ones already reported for PIONA type compounds [START_REF] Walsh | Rapid Analysis and Time Interval Deconvolution for Comprehensive Fuel Compound Group Classification and Speciation Using Gas Chromatography-Vacuum Ultraviolet Spectroscopy[END_REF]. However, response factors used in PIONA analysis are rather class based and they do not take into the account possible response differences between individual species of the same class. This can be neglected in the case of n-alkanes whose response is very similar (see Figure 7A). However, for other types of compounds larger variability can be expected within the same class of compounds. For example, if we look at the obtained spectra for various monoaromatic species in our test mixture (Figure 7B), we can clearly see that they can be very different. Thus, the interest can be seen in accessing the individual response factors for all these compounds for more accurate quantifications.

Conclusion

Being able to reliably and rapidly measure VUV RRFs is of utmost importance for building large database for calibration-free quantitative analysis of complex mixtures and automated spectral decomposition algorithms. This provides a universal methodology according which VUV RRFs can be obtained from complex samples. It involves using GC×GC with both FID and VUV detectors connected in split mode, where FID detector is used as a quantitative reference. A methodology based on either flow measurements or preferably the injection of linear alkanes to take into account changes in flow splitting with oven temperature as well as all other discrimination sources was proposed. This enabled to correct all discrimination effects of the experimental set-up and gave results in accordance with theoretical results. This easy and reliable approach for deriving VUV RRFs was validated on known compounds for which literature data were available. Compared to previous method based on identical family response factors, a better quantification can be achieved. This methodology can be extended to any other compound or group of compounds for which VUV RRFs needs to be measured. Table 1. Flow calculations for 0.12 to 0.21 s injection times for oven temperatures from 100 to 300°C.Temperatures around elution temperatures of n-C 10 and n-C 28 alkanes were taken as lowest and highest temperature values. ; ; m -mass%, F -VUV flow cell mass flow (ml/min).

List of Tables

Table 3. Calculated VUV RRFs relative to n-C 18 (125-240 nm). RSDs from three replicates.

Figure 2 .

 2 Figure 2. n-alkanes FID blob volumes for different modulator injection times (A) and

Figure 3 .

 3 Figure 3. Response coefficients relative to n-C 18 for n-alkanes for GC×GC/FID analysis with

Figure 4 .

 4 Figure 4. Response coefficients for n-alkanes for VUV (blue dots) and FID (red dots)

Figure 5 .

 5 Figure 5. Correction function K(T) calculated from the analysis of n-alkanes (blue) and from

Figure 6 .

 6 Figure 6. VUV chromatogram for a test mixture (Avg. Abs. 125-240 nm).

Figure 7 .

 7 Figure 7. Determined spectral relative response factors for selected species.

Table 2 .

 2 Volumetric flows measured at the exit port of the VUV and FID at different oven temperatures; standard pressure 1 bar, standard temperature 25°C. For estimation of RC elution temperature of 215°C was taken as reference (elution temperature of n-C 18 ).

Table 1 . Flow calculations for 0.12 to 0.21 s injection times for oven temperatures from 100 to 300°C.Temperatures around elution temperatures of n-C 10 and n-C 28 alkanes were taken as lowest and highest temperature values.

 1

		Flush/Fill distance ratio	Fill+Flush distance (cm)
				T (°C)			T (°C)
	Injection time (s)	100	165	230	300	100	165	230	300
	0.12	3.1	3.2	3.2	3.3	11.8	12.6	13.3	13.8
	0.14	3.7	3.8	3.8	3.8	13.3	14.2	14.9	15.6
	0.16	4.2	4.3	4.4	4.4	14.8	15.8	16.6	17.4
	0.18	4.8	4.9	4.9	5.0	16.3	17.4	18.3	19.1
	0.20	5.3	5.4	5.5	5.6	17.7	19.0	20.0	20.9
	0.21	5.6	5.7	5.8	5.9	18.5	19.8	20.8	21.7

Table 2 . Volumetric flows measured at the exit port of the VUV and FID at different oven temperatures; standard pressure 1 bar, standard temperature 25°C. For estimation of RC elution temperature of 215°C was taken as reference (elution temperature of n-C 18 ). ; ; m-mass%, F-VUV cell mass flow (ml/min).

 2

							Flow estimated response
		Flow measurements (mL/min)		% of mass transferred
							coefficients (RC)
					to FID	to VUV
	T(°C)	F VUV	F VUV+make-up	F FID			FID	VUV
						
	50	11.9	20.9	4.2	26.1	73.9	1.13	1.03
	110	12	21	4.1	25.5	74.5	1.10	1.03
	150	12.5	21.5	4.05	24.5	75.5	1.06	1.02
	200	13.2	22.2	4	23.3	76.7	1.00	0.99
	215	13.1	22.1	3.95	23.2	76.8	1.00	1.00
	250	14	23	3.9	21.8	78.2	0.94	0.97
	280	14.3	23.3	3.85	21.2	78.8	0.92	0.96
	325	14.5	23.2	3.8	20.8	79.2	0.90	0.96

Table 3 . Calculated VUV RRFs relative to n-C 18 (125-240 nm). RSD from three replicates. Compound name Molecular formula VUV RRF RSD VUV RRF from

 3

	literature [6]

Data availability statement

Data available on request from the authors.

List of Figures


Gabriel Marchesan Almeida

Sameer Varyani
email: varyani@lirmm.fr

Rémi Busseuil
email: busseuil@lirmm.fr

Gilles Sassatelli
email: sassatelli@lirmm.fr

Pascal Benoit
email: benoit@lirmm.fr

Lionel Torres
email: torres@lirmm.fr

Everton Alceu Carara
email: carara@pucrs.br

Fernando Gehm Moraes

Evaluating the Impact of Task Migration in Multi-Processor Systems-on-Chip

Keywords: C.3 [Special-Purpose and Application-Based Systems]: Real-time and embedded systems, C.2.4 [Computer-Communication Networks]: Distributed Systems-Network operating system, C.1.2 [Processor Architectures]: Multiple Data Stream Architectures (Multiprocessors)-Interconnection architectures Design, Experimentation, Performance MPSoC, task migration, homogeneous, adaptive, NoC, distributed memory, RTOS

This paper presents a Multi-Processor System-on-Chip platform which is capable of load balancing at run-time. The system is purely distributed in the sense that each processor is capable of making decisions on its own, without having relying by any central unit. All the management is ensured by a very tiny preemptive RTOS (run-time operating system) running on every processor which is mainly responsible for running and distributing tasks among the processing elements (PEs). The goal of such strategy is to improve the performance of the system while ensuring scalability of the design. In order to validate the concepts, we have conducted some experiments with a widely used multimedia application: the MJPEG (Motion JPEG) decoder. Obtained results show that the overhead caused by the task migration mechanism is amortized by the gain in term of performance.

INTRODUCTION

Multi-Processor Systems-on-Chip (MPSoC) are attractive candidate architectures for multimedia processing as multimedia schemes generally can be partitioned in datadominated functions, which can be processed in parallel on different cores. MPSoCs may be classified into two different categories: heterogeneous and homogeneous architectures. Heterogeneous architectures achieve a better performance/power consumption trade-off at the cost of reduced flexibility. Homogeneous architectures on their side open interesting perspective in the area of on-line adaptation such as workload balancing [START_REF] Rainer | Programming mpsoc platforms: Road works ahead! In DATE[END_REF] or fault tolerance thanks to their intrinsic functional redundancy.

Since this work targets massively parallel on-chip multiprocessor systems, scalability is a major concern in the approach. In the direction of scalable systems we have developed a homogeneous MPSoC architecture with distributed memory making use of a message passing programming model.

Given the large variety of possible use cases that these platforms must support and the resulting workload variability, offline approaches are no longer sufficient as application mapping paradigms, because they do not allow coping with time changing workloads. Furthermore, the large number of parameters that play a role on the platform performance makes it difficult to estimate the best system response at design time.

In [START_REF] Almeida | An adaptive message passing mpsoc framework[END_REF] we have proposed an adaptive strategy which is responsible for making decisions at run-time. Decisions are taken by processors in a distributed fashion and relate mostly to application performance. This present paper puts focus on the task migration strategy, and mostly addresses both the benefits brought by this technique as well as the associated performance penalty. The new architecture relies on a RTOS with support for semaphores, mutexes and task priority based scheduling algorithm. Moreover, a tiny implementation of a communication stack comprising UDP TCP/IP protocols is available.

The remainder of the paper is organized as follows: Section 2 presents some of the existing software/hardware architectures that enable task migration in the context of MP-SoC. Section 3 explains the task migration support which is the basis of this work. In Section 4 experimental results are presented while conclusions are drawn in Section 5.

RELATED WORKS

In recent years due to the growing interest for MPSoCs, task migration mechanisms have been explored in order to deal with problems related to load balancing among PEs. Some works have adopted the benefits of such strategies for thermal balancing [START_REF] Chaparro | Understanding the thermal implications of multi-core architectures. Parallel and Distributed Systems[END_REF][4] [START_REF] Yeo | Predictive dynamic thermal management for multicore systems[END_REF].

Task migration using shared memory

For shared memory systems such as today's multicore computers, task migration is facilitated by the fact that no data or code has to be moved across physical memories: since all processors are entitled to access any location in the shared memory, migrating a task comes down to electing a different processor for execution. There exist several efficient implementations on general purposes OS such as Windows or Linux.

Task migration has been explored for MPSoCs, notably based on locality considerations [START_REF] Barak | Scalable cluster computing with mosix for linux[END_REF] for decreasing communication overhead or power consumption. In [START_REF] Bertozzi | Supporting task migration in multi-processor systems-on-chip: A feasibility study[END_REF], authors present a migration case study for MPSoCs that relies on the µClinux operating system and a check pointing mechanism. The system uses the MPARM framework [START_REF] Bertozzi | Mparm: Exploring the multi-processor soc design space with systemc[END_REF], and although several memories are used, the whole system supports data coherency through a shared memory view of the system.

In [START_REF] Greiner | Tsar: a scalable, shared memory, many-cores architecture with global cache coherence[END_REF] authors propose to implement a scalable shared memory many-cores architecture with global cache coherence. The architecture is built around 4096 cores which makes use of a logically shared memory but physically distributed, with cache coherence enforced by hardware, using a directorybased protocol.

Task migration using distributed memory

In the case of distributed memory MPSoCs, both process code and state have to be migrated from a processor private memory to another, and synchronizations must be performed using exchanged messages. While this proves straightforward in typical general purpose computers thanks to the presence of a memory management unit (MMU), implementing task migration on tiny MMU-less embedded processors is challenging.

In [START_REF] Mulas | Thermal balancing policy for multiprocessor stream computing platforms[END_REF] authors propose a policy which exploits run-time temperature as well as workload information of streaming applications to define suitable run-time thermal migration patterns. In their approach each processor relies on having a replica of the task in memory. When the migration occurs, the processor stops the execution of the task and the processor in the destination starts running its own replica. Their architecture is based on distributed memory and the processors explicitly communicate with each others by means of the shared memory. This mechanism works well but is very limited in terms of memory overhead once every processor has to have a copy of the task in its memory.

The question which may arise when using shared memory for enabling task migration is concerning the scalability of the system. There is a strong tendency for the next generation of homogeneous MPSoC in using systems with distributed memory targeting scalable and massively parallel architectures.

A number of work in the literature based on distributed memory systems has been using shared memory as a mean for enabling task migration [START_REF] Bertozzi | Supporting task migration in multi-processor systems-on-chip: A feasibility study[END_REF][11] [START_REF] Pittau | Impact of task migration on streaming multimedia for embedded multiprocessors: A quantitative evaluation[END_REF]. In [START_REF] Acquaviva | Assessing task migration impact on embedded soft real-time streaming multimedia applications[END_REF] each core runs a single operating system instance in its logical private memory. Processor cores execute tasks from their private memory and explicitly communicate with each others by means of shared memory. The target platform uses a shared bus as interconnect.

In [START_REF] Barcelos | A hybrid memory organization to enhance task migration and dynamic task allocation in noc-based mpsocs[END_REF] a dynamic task allocation strategy is proposed. The work evaluates task allocation strategies based on binpacking algorithms in the context of MPSoCs. The mechanism adopted is based on a copy model. The whole context (code, data, stack, and contents of internal registers) is migrated and there is no task execution during the transfer. The interprocessor communication is based on send/receive primitives. However, in this work neither explanation about the task migration protocol nor the impact in term of performance of such mechanism is given.

Taking into account the future homogeneous MPSoC systems tendency, scalable architectures with purely distributed memory system are suitable. To the best of our knowledge, our architecture is the only one with a purely distributed memory system in which does not rely on using shared memory for enabling task migration. Instead, it uses the NoC as a communication link where tasks are transmitted during the migration process.

TASK MIGRATION SUPPORT

To handle dynamic conditions where processors may become overloaded very rapidly, we implemented a task migration mechanism which enables this feature. Migration policies can exploit this mechanism to perform load balancing for achieving better performance or for saving energy.

Architectural description

The architecture is made of a homogeneous array of Processing Elements (PEs) communicating through a packetswitching network. For this reason, the PE is called NPU (Network Processing Unit). Each NPU has multitasking capabilities which enable time-sliced execution of multiple tasks. This is supported by a tiny preemptive multitasking Operating System which runs on each NPU. This system further provides usual services such as queues, threads, semaphores and mutexes. The entire operating system has a memory footprint of 55KB, which comprises the dynamic task loader we developed to the purpose of enabling task migration strategies described in this paper. The structural view of the platform is depicted in Figure 1.

The NPU is built of two main layers, the network layer and the processing layer. The network layer is essentially a compact routing engine based on the Hamiltonian Routing Algorithm. The Network-on-Chip (NoC) used in this work was proposed in [START_REF] Moraes | Hermes: an infrastructure for low area overhead packet-switching networks on chip[END_REF].

The purpose of this paper being to study and analyze Packets are read from incoming physical ports, then forwarded to either outgoing ports or the processing layer. Whenever a packet header specifies the current NPU address, the packet is forwarded to the network interface (NI in Figure 1). The network interface buffers incoming data in a small hardware FIFO and simultaneously triggers an interrupt to the processing layer. The interrupt then activates data demultiplexing from the single hardware FIFO to the appropriate software FIFO as illustrated in Figure 2.

Figure 2: Functional View of a NPU

The processing layer is based on a simple and compact RISC microprocessor, its static memory, and a few peripherals (one timer, one interrupt controller, one UART) as shown in Figure 1. The processor used has a compact instruction set comparable to a MIPS-1. It has 3 pipelines stages, no cache, no Memory Management Unit (MMU), and no memory protection support in order to keep it as small as possible. A multitasking tiny Real-Time Operating System (RTOS) implements the support for time-multiplexed execution of multiple tasks. The original version of the RTOS as well the RTL description of the processor used as part of this work are available at [START_REF] Rhoads | Plasma -most mips i(tm)[END_REF].

Memory management strategy

As described in Section 2.2 implementing task migration mechanisms in architectures without MMU is a complex task. To provide task migration support in such architectures without having to rely on using task replication approach, the system has to be capable of loading task dynamically while ensuring memory protection in order to prevent task access memory that has not been allocated to it. Basically there are two main ways to define the system memory space for storing tasks.

Paging

The first one is called paging and consists on dividing the memory into equal, small pieces, called pages. Virtual memory makes it possible to have a linear virtual memory address space and to use it to access blocks fragmented over physical memory address space. The first problem when using this approach is the fact that for every application it is necessary to tune the page size in order to be big enough for storing tasks. Due the fact the applications may vary a lot in terms of size, this approach becomes not scalable since a huge amount of memory can be wasted.

Dynamic memory allocation

The second way is to use mechanisms that allow to dynamically allocate/deallocate memory. This approach is more convenient when scalability is targeted. Therefore it is more difficult to manage once the RTOS has to resolve memory address references. By means of using a mechanism which has a linked list of occupied memory address the RTOS can avoid memory conflicts. The problem by using such approach is the fact that as soon as we have tasks migrating very often, the system memory becomes fragmented. Therefore this approach still looks more flexible and scalable when comparing to the paging mechanism.

Since we target many-cores architectures and then scalable systems, we have chosen the second approach. As the MMU is not present in the system we had to use a feature supported by the GCC compiler that enables to emit relocatable code named Position Independent Code (PIC). This feature is generally used for shared libraries and generates only relative jumps and accesses data locations and functions using a Global Offset Table (GOT).

Task migration protocol

The task migration protocol is depicted in Figure 3. In this scenario the considered application is split into 3 tasks (T 1, T2, T3). At the beginning of the processing tasks are running in different NPUs (0...3) . At a given moment NPU1 decides migrating T2 to NPU0 (Step 1). The NPU1 sends a control packet to the master of the cluster (NPU 1) asking authorization for performing task migration (Step 2). It is important to highlight that NPU 0 is master in the sense that there is a global routing table 1 in this node, but each NPU takes its own decisions, characterizing a purely distributed system. The master of the cluster checks in its routing table if there is one or more tasks sending data to the task which is supposed to be migrated. In this case, T 1 and T3. Then, the master sends a control packet to these tasks asking the tasks to stop sending packet to T 2 so that migration can be initiated. In this paper we have performed all the experiments in a single cluster built of 4 nodes. For future experiments where larger MPSoCs architectures will be used the model based on multi-clusters will be adopted.

Immediately after receiving the control packet from the Master, T 1 and T3 stop sending data to T2 (Step 4). Then, T 2 reads out the content of its FIFOs and then is migrated to NPU 0 (Step 5). During the migration process only the opcode of the task is sent over the NoC. Further, as the processor is not equipped with a MMU that handles virtual to physical address translation, migrating task context is not supported in the system. Therefore application tasks that maintain parameters across processed blocks (such as adaptive filters) cannot be migrated. This is rarely limitative as most streaming applications do not require this. The next step is registering the task into the memory and inserting it into the scheduling list. This process is done as soon as the task reaches the destination. Then, in (Step 6) the master node sends a control packet to T 1 and T3 informing that T 2 has been migrated and then the data transfer can be resumed. This control packet carries both the message for resuming sender tasks and new task location.

Note that compared to other approaches [START_REF] Pittau | Impact of task migration on streaming multimedia for embedded multiprocessors: A quantitative evaluation[END_REF], this protocol implements a non-packet-loss control. The packets transmitted during the migration process will be received and processed.

EXPERIMENTAL RESULTS

In this section we evaluate the overhead induced by the proposed task migration mechanism. In order to fairly assess the performance overhead induced by the proposed task migration strategy, experiments are conducted in best effort mode, therefore all implementations aim at maximizing performance rather than ensuring quality of service. This allows stressing the architecture as much as possible, hence migration cost become prominent rather than compensated by transient increase in CPU usage.

For performing the experiments we have used ModelSim as SystemC/VHDL simulator. The entire architecture is described in both SystemC and VHDL RTL, except the NoC which is not available in SystemC. The MIPS processor is coded based on an ISS (Instruction Set Simulator), built around of a SystemC wrapper which connects the processor to the rest of the components in the architecture.

Multimedia applications are characterized by soft realtime requirements. As a consequence, migration overheads must be carefully evaluated to prevent deadline misses when moving processes between nodes [START_REF] Acquaviva | Assessing task migration impact on embedded soft real-time streaming multimedia applications[END_REF]. In order to validate our task migration mechanism and perform our experiments, we have implemented a MJPEG (Motion JPEG) decoder.

MJPEG profiling and partitioning

In order to better measure the workload of each function in the MJPEG application, we have performed an application profiling. It is possible to clearly identify the three main functions in the MJPEG decoder (IVLC, IDCT and IQUANT) as well the most critical (IVLC). Based on this information, we have partitioned the MJPEG decoder by

MJPEG decoder statically mapped

Aiming to compare static mappings against dynamic mapping mechanisms we have created five different scenarios which use static mapping (SM 1...5). Table 1 presents the placement for the tasks. For all the scenarios we have considered putting T 1 in NPU3. This task is not part of the MJPEG decoder itself and it only responsible for feeding the decoder with the input streams. In the first mapping (SM 1) all the three tasks are running in the NPU0, in the second mapping (SM 2) the most critical task (IVLC) is running alone in NPU 1, etc.

Figure 4 shows the performance of the MJPEG decoder when mapped to different NPUs. It is important to observe that in the worst case (SM 5) the communication cost plays an important role in the performance of the system. In the scenario which achieves the best performance (SM 2), the most critical task is mapped into a dedicated NPU. It is very clear that whenever critical tasks are mapped into dedicated NPUs performance is improved, the problem is to evaluate the performance for every possible mapping when the number of tasks and the complexity increases. The number of possible mappings is given by N T , where N represents the number of NPUs and T the number of tasks. So, for a system with 4 processors and 20 tasks, the number of possible combinations would be equal to 1.20e+24, which makes the off-line mapping estimation unfeasible.

MJPEG decoder dynamically mapped

In order to facilitate the comprehension of our task migration mechanism we have defined some terms:

• M T : The task candidate to be migrated;

• Pi,j: List of predecessors tasks of task j;

• Si,j: List of successors tasks of task j;

• MTj: Timestamp corresponding to task migration mechanism triggered for task j;

• MS j : Timestamp corresponding to task j migration start;

• MF j : Timestamp corresponding to task j arrival at destination NPU, comprising operating system task registration in the ready list;

Aiming to deal with such huge amount of possibilities, the system has to be capable of adapting at run-time. The basic mechanism for enabling adaptability in a purely distributed MPSoC system is through the task migration. Aiming to evaluate the overhead caused by the system when using such mechanism we have created a scenario as follows:

At the beginning of the processing all three tasks of the MJPEG application are mapped to NPU 0. Additional to them, there is a task responsible for feeding the system with the stream to be decoded. Then the most critical task (IVLC) is migrated to NPU 1. The selection of the NPU where the task will be migrated is beyond the scope of this paper. The task migration mechanism is triggered from a thread defined in the RTOS. Figure 5 shows the throughput during the task migration process.

At the moment the task migration process is triggered, the master node asks all predecessor tasks (P i,2) of M2 to stop sending packets. At this moment the task which feeds information to the system stops sending packets to M 2.

At MS 2 = 16ms NPU0 starts transmitting T2 over the NoC. From this moment up to MF 2, we clearly see the performance decreases. Once received and registered in memory (MF 2), T2 is ready to be scheduled. Our task migration protocol implements a non-packet-loss control, before migrating a given task all the data in its incoming FIFO are read out and processed. After task has been migrated, P i,2 resumes sending packets to T 2.

After the FIFO of T 2 has been fed up the performance gets increased going from 0.9MB/s to around 4MB/s. In average the gain in term of performance it is about 25% when compared to the initial static mapping (3MB/s).

To the purpose of assessing the penalty induced by the migration in the used best-effort implementations we conducted experiments for finding the break-event point.

Figure 5 shows a plot in which we consider a buffer which is fed by the MJPEG processing pipeline output data. Data are read out from that buffer at a rate corresponding to 3MB/s, aligned to the first performance plateau.

During this phase, buffer filling is therefore constant as data are written and read out at the same rate. At MT 2 = 7.5ms migration decision is issued, which translates in an immediate drop in throughput and therefore buffer filling that extends until the end of the migration process. As soon as the migration is completed throughput rapidly reaches a higher plateau that in turn translates in a rapid increase in buffer filling. The initial buffer level is reached at time 42ms and at that time the penalty incurred by the migration is fully compensated. The break-even point is therefore in the order of 34.5ms in this scenario. Figure 6 presents the timing jitter for the dynamic mapping. We can observe that at the beginning of the processing, before triggering the task migration, the timing jitter oscillates. The reason is that since all the tasks share the same NPU there is no pipeline and then the packet arrival is not constant. During the task migration process the jitter is increased due to the fact that the execution flow is stopped. At the moment of the task migration we can clearly observe the timing jitter decreasing and then getting stable. This is explained by the fact that the new mapping provides a better task mapping.

Figure 7 presents three different mappings for the MJPEG application previously used. There are two static mappings without task migration and one dynamic mapping with task migration. For the two static mappings we have used two with best/worst performance respectively defined as SM 2 and SM5. For the dynamic mapping the initial mapping place all three MJPEG tasks in NPU 0 and T1 in NPU3 and later the most critical task is migrated to NPU 1 (SM2).

Obtained results show that even under heavy load the proposed multiprocessor system is capable of completing a task migration in a tenth of milliseconds, and that the penalty is compensated in a few tenths of milliseconds. This result sug- gests that dynamic load balancing with frequent task remapping may provide significant benefits over traditional designtime decided mappings. Further, the observed performance overhead resulted from best-effort application implementations. In the case of soft or hard real-time implementations where processors are sized to purpose and therefore rarely overused, adequate buffering may completely hide performance cost therefore resulting in virtually negating task migration overheads.

CONCLUSION

In this paper we have evaluated the impact caused by the task migration mechanism here proposed. We analyze the efficiency of our approach when compared to traditional approaches. The results show that the overhead produced by the mechanism is amortized by the gain in term of performance which is around 25% when compared to static mapping for the case of the MJPEG application.

For validating the experiments we have used a 2×2 homogeneous MPSoC architecture. It implements a task migration mechanism in order to provide load balancing capabilities. We have compared our approach against the existing ones and to the best of our knowledge, our architecture is the only one with a purely distributed memory system that does not rely on hared memory for enabling task migration.

As future work we plan to implement more complex scenarios with synthetic tasks for better exploiting/tuning all the parameters aiming to have an efficient task migration mechanism for MPSoC. Also we aim to use task migration mechanism in order to deal with power consumption issues once by using such strategy we can better harmonize the system and save power consumption.

Figure 1 :

 1 Figure 1: Structural View of the Platform

Figure 3 :

 3 Figure 3: Overview of the Task Migration Protocol

Figure 4 :

 4 Figure 4: Different Static Mappings

Figure 5 :

 5 Figure 5: Throughput During Task Migration

Figure 6 :

 6 Figure 6: Timing Jitter (Dynamic Mapping)

Figure 7 :

 7 Figure 7: Static vs Dynamic Mapping

Table 1 : Static mappings for the MJPEG decoder

 1

	Mapping			NPU
			0	1	2	3
	SM1		T2, T3, T4	-	-	T1
	SM2		T3, T4	T2	-	T1
	SM3	Tasks	T2	T3 T4 T1
	SM4		T2, T4	T3	-	T1
	SM5		T2, T3	T4	-	T1
	representing it as a task graph built of four tasks (T1 →
	Sender, T

2 → IVLC, T3 → IQUANT and T4 → IDCT).

SBCCI'10, September 6-9, 2010, São Paulo, Brazil.