Bérengère Abou

François Gallet

Pascal Monceau

Noëlle Pottier

Generalized Einstein Relation in an aging colloidal glass

Keywords: 64.70.Pf, 05.40.-a, 05.70.-a

We present an experimental and theoretical investigation of the Generalized Einstein Relation (GER), a particular form of a fluctuation-dissipation relation, in an out-of-equilibrium visco-elastic fluid. Micrometer beads, used as thermometers, are immersed in an aging colloidal glass to provide both fluctuation and dissipation measurements. The deviations from the Generalized Einstein Relation are derived as a function of frequency and aging time. The observed deviations from GER are interpreted as directly related to the change in the glass relaxation times with aging time. In our scenario, deviations are observed in the regime where the observation time scale is of the order of a characteristic relaxation time of the glass.

Motivation

During the past years, slow relaxation systems have received considerable attention in the sense that they constitute a challenge for new developments in nonequilibrium statistical mechanics. Such systems, which are rather common in nature, include structural glasses, polymers, colloids and granular matter.

They share some characteristics called glassy behavior, in particular a drastic slowing down of relaxation processes when some control parameters are varied.

As the characteristic relaxation times becomes longer than, or comparable to, the observation timescale, the system is said to age. The physical properties of the material depend on the waiting time, which is the time elapsed since preparation in the nonequilibrium state.

Recently, there have been serious attempts to approach and understand aging phenomena on a theoretical level. Many efforts have been devoted to apply statistical physics description -in particular, fluctuation-dissipation relations (FDR) -to out-of-equilibrium systems. At thermodynamic equilibrium, fluctuation-dissipation relations relate the response functions of the system to its autocorrelation functions, involving a single thermodynamic parameter, the equilibrium temperature. However, FDR are not expected to hold in out-ofequilibrium systems. The idea that a timescale dependent nonequilibrium or effective temperature could describe the slow relaxation modes has received a lot of attention. This effective temperature, defined from an extension of FDR, is different from the bath temperature and has been shown to display many of the properties of a thermodynamic temperature (1; 2). Deviations from FDR have been observed in many numerical simulations (3; 4; 5; 6; 7; 8; 9; 10). To date, there are still few experiments where FDR are studied in aging mate-rials, such as structural glasses (11), colloidal glasses (12; 13; 14; 15; 16; 17), spin glasses (18), polymer glasses (19) and granular media (20; 21). In most cases, they show deviations from FDR as a function of waiting time and frequency. Unfortunately, no global understanding can yet be extracted from these experimental findings.

Here we present an experimental and theoretical investigation of the Generalized Einstein Relation (GER), a particular form of a fluctuation-dissipation relation, in an out-of-equilibrium visco-elastic fluid. The deviations from the GER are measured as a function of waiting time t w and frequency ω, leading to an effective temperature T eff (ω), parametrized by t w . This is achieved by simultaneously measuring the response function to an external force -using an optical tweezer -and the position fluctuations of micrometric beads embedded in the glass.

The paper is organized as follows. Sec. 2 is devoted to the theoretical investigation of the Generalized Einstein Relation in an out-of-equilibrium system, leading to the definition of an effective temperature. Sec. 3 presents the experimental procedures used to test such a GER in an aging colloidal glass:

Brownian motion measurements and response to an oscillatory force -using optical tweezer. In Sec. 4, the effective temperature is derived as a function of aging time and frequency. In Sec. 5, we suggest a microscopic interpretation of our findings. We conclude the paper with comparisons with other tests of FDR in the same glass and with open questions.

2 Fluctuation-dissipation relation in an out-of-equilibrium environment

Equilibrium medium case

Let us first consider a diffusing particle of mass m evolving in a stationary medium. Its motion can be described by a generalized Langevin equation, in which v(t) = dx/dt is the particle velocity, F (t) the random force acting on the particle, and γ(t) a delayed friction kernel that takes into account the visco-elastic properties of the medium :

m dv dt + m ∞ -∞ γ(t -t ′ )v(t ′ ) dt ′ = F (t) (1)
Note for further purpose that, in the usual experimental frequency range, the inertial term in Eq.( 1) is quite negligible. The frequency-dependent particle mobility thus reduces to μ(ω) = [mγ(ω)] -1 , where γ(ω) = ∞ -∞ γ(t)e iωt dt is the Fourier transform of the delayed kernel γ(t).

The Generalized Einstein Relation

If the surrounding stationary medium is in thermal equilibrium at temperature T , one can write a Kubo formula expressing the frequency-dependent particle mobility μ(ω) in terms of the velocity correlation function (22) :

μ(ω) = 1 kT ∞ 0 v(t)v(t = 0) e iωt dt (2)
(the symbol . . . denotes the average over an ensemble of realizations). Formula (2) defines μ(ω) as an analytic function of ω in the upper complex half plane.

From Eq. ( 2), one can derive a formula linking the drift and diffusion properties of the particle. The mean-squared displacement of the diffusing particle, as defined by :

∆x 2 (t) = [x(t) -x(t = 0)] 2 , t > 0 (3)
can be deduced from the velocity correlation function via a double integration over time:

∆x 2 (t) = 2 t 0 dt 1 t 1 0 dt 2 v(t 1 )v(t 2 ) (4)
Introducing the Laplace transformed quantities v(s) = ∞ 0 v(t)e -st dt and ∆x 2 (s) = ∞ 0 ∆x 2 (t) e -st dt, one gets, by Laplace transforming Eq. ( 3):

s 2 ∆x 2 (s) = 2 v(s)v(t = 0) (5)
The quantity v(s)v(t = 0) can be obtained by setting ω = is in the Kubo formula (2) (which is allowed for positive s, since the function μ(ω) is analytic in the upper complex half plane). One gets :

v(s)v(t = 0) = kT μ(s) (6)
with μ(s) = μ(ω = is). Eq. ( 5) then takes the form of a relation linking the Laplace transforms of the particle mean-squared displacement and mobility :

s 2 ∆x 2 (s) = 2kT μ(s) (7)
Eq. ( 7) is known as the Generalized Einstein Relation (GER).

The fluctuation-dissipation relation

It follows from Eq. ( 2) that the velocity spectral density is related to the dissipative part of the mobility by a fluctuation-dissipation relation (namely, the celebrated Einstein relation):

C vv (ω) = ∞ -∞ v(t)v(t = 0) e iωt dt = 2kT ℜeμ(ω) (8)
The validity of Eq. ( 8) is restricted to ω real.

Discussion

The Einstein relation (8) contains the same information as the GER (7), since μ(ω) can be deduced from ℜeμ(ω) with the help of the usual Kramers-Kronig relations valid for real ω. Thus, Eqs. ( 7) and ( 8) constitute fully equivalent formulas, which both involve the thermodynamic bath temperature T .

Out-of-equilibrium environment

The general situation of a particle diffusing in an out-of-equilibrium environment is much more difficult to describe. As well-known, in an aging medium, no well defined thermodynamical temperature does exist, so that Eqs. ( 7) and (8) are no longer expected to be valid.

We address the question whether the study of the diffusion and drift of the probe particle is likely to provide information about the out-of-equilibrium properties of its surrounding medium.

Modified Generalized Einstein Relation

Out of equilibrium, one can write a modified Kubo formula as :

μ(ω) = 1 k Θ(ω) ∞ 0 v(t)v(t = 0) e iωt dt (9)
Formula ( 9) defines the product μ(ω) Θ(ω) as an analytic function of ω in the upper complex half plane. Since this analyticity property holds for μ(ω), it also holds for Θ(ω).

Accordingly, Eq. ( 6) has to be replaced by :

v(s)v(t = 0) = k Θ(s)μ(s) (10)
Thus, the relation linking the Laplace transforms of the particle mean-squared displacement and mobility writes :

s 2 ∆x 2 (s) = 2k Θ(s)μ(s) (11)
Eq. ( 11) states an out-of-equilibrium GER. It involves a s-dependent GER ratio Θ(s), parametrized by the age of the system t w .

Experimentally, it is always possible to measure independently both quantities -∆x 2 (s) and μ(s) -during aging. For a particle evolving in a bath at equilibrium, Θ(s) = T would be independent on s, as shown by Eq. (7). In an out-of-equilibrium environment where Θ(s) is a priori expected to be different from T , the mobility of the probe particle cannot be deduced from the meansquared displacement measurement, and vice-versa. As a consequence, the visco-elastic properties of the out-of-equilibrium medium cannot be deduced from the single measurement of the probe thermal fluctuations and passive microrheology cannot be achieved [21].

Modified fluctuation-dissipation relation

Since, in an out-of-equilibrium environment, even stationary, the Einstein relation ( 8) is not a priori satisfied, it has been proposed (1; 2) to rewrite it in a modified way with the help of a frequency-dependent effective temperature.

Such a quantity, denoted as T eff (ω) and parametrized by the age of the system t w , has been defined, for real ω, via an extension of the Einstein relation (8).

One writes a modified Einstein relation as (24; 25) :

C vv (ω) = 2kT eff (ω)ℜeμ(ω) (12)
It has been argued in (1; 2) that the effective temperature T eff (ω) defined in such a way would have a possible thermodynamic meaning, in the sense that it plays the same role as the thermodynamic temperature in systems at equilibrium (namely, it controls the direction of heat flow and acts as a criterion for thermalisation).

Discussion

In the case of an out-of-equilibrium medium, one has at hand the modified GER (11) and the modified FDR (12). The question thus arises of the link between these two descriptions, namely of the relation between the GER ratio Θ(s) and the effective temperature T eff (ω).

The modified Kubo formula (9) defines a complex frequency-dependent func-tion Θ(ω), in terms of which the velocity spectral density writes:

C vv (ω) = 2kℜe[ Θ(ω)μ(ω)] (13)
Comparing Eqs. ( 12) and ( 13), one gets the following relationship between Θ(ω) and T eff (ω) :

T eff (ω) ℜeμ(ω) = ℜe[μ(ω) Θ(ω)] (14)
Eq. ( 14) displays the fact that the effective temperature T eff (ω) involved in the modified Einstein relation ( 12) can be deduced from the GER ratio introduced in the modified GER (11) (and vice-versa). This point has been developed in details in (25).

Thus, as it can be seen from Eq. ( 11), independent measurements of the particle mean-squared displacement and mobility in an aging medium give access, once ∆x 2 (s) and μ(s) = μ(ω = is) are determined, to the GER ratio Θ(s).

Eq. ( 14) then allows to derive an effective temperature T eff (ω) from the experimentally measurable GER ratio Θ(ω) = Θ(s = -iω).

In the out-of-equilibrium case, the modified GER (11) and the modified FDR (12) constitute fully equivalent formulas. However, Eq. ( 11) involves a GER ratio Θ(s), naturally expressed in terms of the Laplace variable s, while Eq. ( 12) involves an effective temperature T eff (ω), naturally expressed in terms of the real frequency ω.

3 Experimental procedures

Samples preparation

The experiments were performed on Laponite RD, a synthetic clay manufactured by Laporte Industry. The particles of Laponite are colloidal disks of 25 nm diameter and 1 nm thickness, with a negative surface charge on both faces (26). The clay powder was mixed in ultra-pure water, and the pH value of the suspensions fixed to pH = 10 by addition of NaOH, providing chemically stable particles (27). The suspension was stirred vigorously during 15 minutes and then filtered through a Millipore Millex -AA 0.8 µm filter unit. This procedure allows us to prepare a reproducible initial liquid state. The aging time t w = 0 of the suspension is defined as the moment it passes through the filter.

These aqueous suspensions form glasses for low volume fraction in particles (28). Starting from a viscous "liquid" state right after preparation, the suspension becomes more and more visco-elastic with time. Since the physical properties of the suspension depend on the time t w elapsed since preparation, the sample is said to age. Aging can be seen through the change in both the visco-elastic properties and of the colloidal disks diffusion (29; 30). Laponite suspensions age on timescales that depend on the particles' concentration. We are thus able to control the aging timescales of the glass by adjusting this concentration. With a volume fraction of 2.3% wt, the glass evolves over several hours, slowly enough to allow us quasi-simultaneous measurements of the fluctuation and dissipation properties, within a few minutes, without significative aging of the sample. These two successive measurements are thus considered to be performed at the same waiting time t w .

The experiments were carried out in a square chamber -20 × 20 mm 2 -made of a microscope plate and a coverslip separated by a thin spacer (0.1 mm thickness). The beads are suspended in the glass right after its preparation.

The chamber is then filled with the suspension, sealed with vacuum grease and mounted on a piezoelectric stage on the optical microscope plate. The probes are latex and silica beads, in very low concentration (respectively 10 -4 % and 4.10 -4 % in volume). Latex beads (1.0±0.1µm in diameter, Polysciences, Inc.), were preferentially used for fluctuation measurements : since they do not sediment during the experiment, their random motion is not perturbed by the chamber walls. Silica beads (2.1 ± 0.1µm in diameter, Bangs Lab Inc.) were used for dissipation measurements, because they are more efficiently trapped by the optical tweezers. By assuming that the particle mobility scales as the inverse particle size according to μ(ω) = 1/6πRη(ω) (Stokes assumption in a visco-elastic fluid), the comparison between the results of the fluctuation and dissipation measurements, once rescaled to the same diameter, is meaningful.

This relation is exact in a purely viscous fluid at low Reynolds number; here we assume its validity in the visco-elastic fluid.

In these experiments, the nature of the bead material may play a role through the particle-sample interactions, dominated by electrostatics. Actually, the suspensions of Laponite are prepared at pH = 10 by addition of NaOH. At this ionic concentration, the Debye-Hückel screening length is of the order of 30 nm, which is comparable to the Laponite particle diameter, and smaller than the interparticle distance. In such conditions, the electrostatic interactions between the micro beads (actually both silica and latex beads are charged)

and the Laponite particles are screened on a distance much smaller than the bead diameter. As a consequence, the range of interactions between beads and particles does not exceed 30 nm and the system is not perturbed on large scales by the introduction of the beads.

Thermal fluctuations of the beads

At a given aging time t w , we record the fluctuating motion of 1 µm latex beads during 8 s, with a fast CCD camera sampling at 250 Hz (Fastcam-PHOTRON LTD). A digital image analysis allows us to track the bead positions x(t) and y(t) close to the focus plane of the microscope objective. For each bead, we calculate the time-averaged mean-squared displacement ∆r 2 (t)

t ′ = [x(t ′ + t) -x(t ′ )] 2 + [y(t ′ + t) -y(t ′ )] 2 t ′ = 2 ∆x 2 (t) t ′ .
To preserve a good statistics, we keep the data of ∆r 2 (t) t ′ in the range 0.004 < t < 1 s. The resolution on the bead position, determined by sub-pixel accuracy in the image analysis detection, is 10 nm. The glass remains in a quasi-stationary state during the recording, which takes a short time compared to the aging timescale. The quantity ∆r 2 (t) t ′ , averaged over several beads and realizations, can thus be identified to the ensemble-averaged mean-squared displacement.

Dissipative response to an oscillatory force

We describe now the measurement of the mobility μ(ω), at a given frequency ω, for various aging times t w . This measurement is performed immediately after the Brownian motion recording, at the same aging time t w . Since the aging Laponite suspension is a visco-elastic fluid, the bead mobility μ(ω) = |μ(ω)|e iϕ(ω) is a complex number. We thus need to measure the phase and modulus of the tracer mobility. We use an optical tweezer to trap a 2.1 µm silica bead immersed in the glass. Trapping is achieved by focusing a powerful infrared laser beam (Nd YAG, Spectra-Physics, P max = 600 mW) through a microscope objective of large numerical aperture (31). The trapping force F on a small dielectric object like a silica bead is proportional to the intensity gradient in the focusing region. It depends on the distance x of the center of the trapped object to the center of the trap, according to F (x) = -kx(1+ǫ|x|).

The corrective factor ǫ is introduced to take into account the non-harmonicity of the trapping potential. The trap stiffness k and the factor ǫ are determined from an independent calibration. The calibration procedure was described in details in previous publications using optical tweezers set-up (34). Once the bead is trapped, we make the experimental chamber oscillate by monitoring We record with the fast camera the bead movement, and measure by conventional image analysis its displacement x exp (-iωt) from the trap center.

Notice that x is a complex number which includes a phase shift due to the fluid visco-elasticity. At a given frequency ω, the force amplitude F ′ (ω) is given by to determine the bead position from the numerical recording of the bead images. The accuracy on the bead position was about 10 nm, for typical motions comparable to the bead radius, in the micrometer range. These variations in aging timescales are not so surprising because in such suspensions, the aging dynamics is known to drastically depend on the particle concentration. In a suspension at 2.5% wt, a three orders of magnitude increase of the complex viscosity modulus -measured with a conventional rheometeris reached after 100 minutes, while in a 3.5% wt suspension, the same increase is reached after 10 minutes (30). Besides, slight ionic concentration variations in the suspension induce important changes in particle interactions. These variations may arise either from pH differences or ions salting-out from the chamber walls.

F ′ (ω) = ṽ(ω)/μ(ω), where ṽ(ω) = iω(x f -x) = iω(x p -x)

Results

Rescaling of the aging dynamics

Here we suggest a time rescaling in order to compare the different realizations.

We assume that the differences in the aging dynamic shown in Fig. 1(a) can be compensated by a linear stretching in aging time. This is supported by a recent paper by Joshi where the glass transition of a Laponite suspension is investigated (32). The characteristic dimensionless relaxation time τ /τ 0 of the suspension before the system enters the full aging regime (t w < t w * ) is shown to only depend on the dimensionless age t w /t w * . The transition time t w * depends on the volume fraction Φ, according to t * w ∼ Φ -2/3 . Given a massic fraction of 2.3 %, and the aging timescales involved, our experiments were performed before the full aging regime takes place (29). By assuming that i)

the suspension viscosity only depends on the characteristic relaxation time τ /τ 0 and thus on t w /t w * (33), and ii) that the differences between realizations are essentially due to slight volume fraction variations, it seems realistic to balance the differences by a linear stretching in aging time. In Fig. 1(b), the aging time was linearly stretched to make the viscosities roughly coincide for all experiments, choosing a particular realization as a reference. Nevertheless, it must be clear that the same conclusions on T eff are obtained on each separate sample. With this rescaling, we are now able to average over different realizations. From now on, the aging times of the different realizations are rescaled by using this rescaling. to make the viscosities roughly coincide for all experiments, choosing a particular realization as a reference.

Brownian motion of beads in the glass

Figure 2 shows the mean-squared displacement of latex beads immersed in the colloidal glass, as a function of time t, for various aging times t w . At t w = 0, we observe a nearly diffusive behavior of the tracer beads, characterized by a linear dependency of the mean-squared displacement with time. Upon increasing on t w , the tracer motion becomes sub-diffusive. the phase ϕ decreases with t w . This corresponds to the shift between a purely viscous behaviour (ϕ = 0) to a visco-elastic one (-π/2 < ϕ < 0). In a firstorder approximation, the phase remains independent of the frequency. Figure Here, ω 0 is an arbitrary reference frequency set to ω 0 = 1 rad.s -1 for convenience. Starting from about zero at low aging times, the exponent β increases with t w . Since |μ(ω)| exhibits a power-law behavior, the dependence of ϕ(t w ) must be related to β by ϕ(t w ) = -β(t w )π/2. This ensures that μ(s) is a real number. In Fig. 3(b), we plot the quantity -β(t w )π/2 (full circles), which is in fair agreement with the experimental data ϕ(t w ).

Mobility from oscillatory force

Effective Temperature derived from oscillatory measurements

The GER ratio Θ(s) is now derived from the oscillatory and Brownian motion measurements. The selected range s ∈ [3; 60] s -1 corresponds to the experimental frequencies range f ∈ [0.5; 10] Hz. From the oscillatory measurements, the variations of μ(ω) are well represented by the analytical form

μ(ω) = µ 0 (ω/ω 0 ) β exp (-iβπ/2). The Laplace transform μ(s) = μ(ω = is) = µ 0 (s/s 0 )
β is then derived by analytical continuation. Again, s 0 is an arbitrary reference frequency set to s 0 = 1 s -1 . As can be seen in Fig. 2, ∆r 2 (t) can be approximated by a power-law in the range t ∈ [0.015; 0.3] s. As a consequence, in the corresponding range s ∈ [3; 60] s -1 , the Laplace transform of the meansquared displacement is well described by a power-law ∆r 2 (s) = a(s/s 0 ) -b .

Fig. 4 shows the parameters a, b, µ 0 and β as a function of aging time t w , averaged over a set of six different realizations, using the time rescaling described in section 4.1.

The exponent b decreases from about 1.9 ± 0.05 to 1 ± 0.05 while the exponent β increases from about zero at low aging times to 0.82 ± 0.1 at the end of the experiment. This is consistent with the change from a viscous dominated to an elastic dominated behavior. The error bars on β take into account the departure between the measured and extrapolated values, which are not systematic (see another realization in ( 14)).

Bringing together our data for ∆r 2 (s) and μ(s), and using the modified Generalized Einstein Relation (11), the GER ratio Θ(s), parametrized by t w , is given by :

Θ(s) = a 4kµ 0 (s/s 0 ) 2-b-β in the range s ∈ [3, 60] s -1 .
After analytical continuation of Θ(ω) = Θ(s = -iω), we derive the effective temperature T eff (ω), at a given t w , from :

T eff (ω) = a 4kµ 0 cos[(b -2)π/2] cos(βπ/2) (ω/ω 0 ) 2-b-β (15)
in the range ω ∈ [3; 60] rad.s -1 . In a system at equilibrium, we should have a 4kµ 0 = T and 2 -b -β = 0, which leads to Θ(s) = T and T eff (ω) = T . This is not the case here for the aging colloidal glass.

The dependence of the effective temperature T eff with aging time t w , at different frequencies, is shown in Fig. 5. The results have been averaged over six realizations. At the earliest t w , the effective temperature is close to the bath temperature T = 300 K. Upon increase on t w , T eff increases up to 2-3 times the bath temperature and then decreases back upon further increase on t w .

Such a behavior -an increase of T eff followed by a decrease -was observed for the first time in a colloidal glassy system in (14), where a scenario for this non-monotonic behavior was suggested. In the range ω ∈ [3; 60] rad. s -1 , T eff increases with frequency for all aging times as seen in Fig. 5. In these experiments, the set-up does not allow to measure T eff at longer t w . Indeed, beyond t w = 200 minutes, the mobility modulus becomes smaller than 10 -2 m s -1 pN -1 . In this range, the optical tweezer is not powerful enough to induce a detectable motion of the bead.

Here we remain in the frame of power-law approximation. This is obviously not true in the full time range, but at least in the range [0.015; 0.3] s. Significant deviations from a power-law are measured at large aging times and are currently under study.

Discussion and conclusion

As previously reported in (14), the dependence of T eff on t w can be interpreted through the change in the glass relaxation times with aging time. In colloidal glasses, dynamic light scattering and diffusive wave spectroscopy experiments provide the opportunity to probe the relaxation times associated to the colloidal particles diffusion (29; 36; 37). Fig. 6 shows a scheme of the resulting relaxation times distribution function P (τ ), centred around two characteristic relaxation times τ fast and τ slow . Upon increasing t w , part of the modes distribution function, centred around τ slow , shifts to larger times, while the mode at τ fast ∼ 0.1 ms remains unchanged.

We suggest the following scenario for the dependence of the effective temperature on the aging time. When probing the colloidal glass at a typical frequency f = 1 Hz, three situations successively occur upon increasing t w . At the earliest t w , the glass relaxation times are small compared to the observation time scale τ fast,slow ≪ 1/f and do not play any role on this observation time. The glass is "at equilibrium". In this experiment, the bead is small enough to be sensitive to molecular fluctuations. This ensures that it can thermalize with the bath when the glass relaxation times do not play any role on the observa-tion time scale. In this case, the reading of the bead thermometer reduces to the bath temperature T . Upon increase on t w , relaxation modes of the order of the observation time scale τ slow ∼ 1/f appear in the glass as seen in Fig. 6 b.

On this observation timescale 1/f , the system is out of equilibrium : the measured temperature becomes different from the bath temperature. Deviations from the Generalized Einstein Relation are thus observed. Finally, for very long t w , the first situation is recovered. The slow and fast relaxation processes of the glass do not play any role at the experimental observation timescale because τ slow ≫ 1/f and τ fast ≪ 1/f . The bead thermometer, only sensitive to the fast relaxation processes at the molecular scale, again thermalizes with the bath. The measured temperature is then expected to reduce back to the bath temperature T . Finally, in this scenario, deviations are only observed in the regime where the observation time scale is of the order of a characteristic relaxation time of the glass, ωτ ∼ 1 (14). These different situations are clearly identified in Fig. 5.

As described in (2; 38), the temperature of an object is measured by coupling it to a thermometer during a sufficiently long time interval such that all heat exchanges between thermometer and system take place and the whole system equilibrates. In (2), the authors consider an oscillator of characteristic frequency ω 0 as a thermometer, weakly coupled to a glassy system in which a regime with small energy flows exist. The glass exhibits two time correlation scales, a fast one and a slow one, such that: R ST (t If ω 0 is high enough so that the thermometer evaluates the fast relaxation and quasiequilibrium is achieved on the time scale 1/ω 0 , its asymptotic internal energy density reads E THERM = kT . The reading of the thermometer is the bath temperature T . If ω 0 is very low, the thermometer examines the system in its long time scales behavior and one finds E THERM = kT * , where T * is identified as the temperature of the system on this observation time. Any small but macroscopic thermometer, weakly coupled to the system, is shown to play the same role as the above considered oscillator. The role of ω 0 is then played by the inverse of the typical response time of the thermometer.

-t w ) = 1 kT ∂ tw C ST (t -t w ) is satisfied at short times t -t w ≪ t w and R AG (t w /t) = 1 kT * ∂ tw C AG (t w /t) is satisfied if t w /t = O(1). R
In our experiments, the bead plays the role of a thermometer which characteristic frequency ω 0 is set to the probing frequency ω. Indeed, the bead inertia is negligible below ω inertia = 10 8 rad.s -1 for the highest value of the fluid viscosity (≃ 10 Pa.s). Experimentally, the observation time scale 1/ω is much higher than the typical response time of the bead thermometer 1/ω inertia . As a result, the response time of the bead is set to the observation time scale 1/ω. It follows that by changing this observation time scale, the thermometer can explore or be sensitive to, different relaxation time scales of the glass (see Fig. 6).

In models and simulations -where the characteristic relaxation time of the system is set to the waiting time -deviations are observed when the characteristic observation time 1/ω is of the same order or greater than the aging time t w . Experimentally, deviations are observed in the other regime when 1/ω ≪ t w . In our sense, this discrepancy arises because the aging time t w is not the only relevant parameter to describe aging, and that microscopic At this stage, whether these experimental investigations with the same observables, in the same colloidal glass, are in contradiction still remains an open question (14; 15; 16). Furthermore, the definition of an effective temperature, with a thermodynamic meaning, implies that this quantity is independent of the chosen observable, which is not verified in (13) where rheological and dielectric measurements do not lead to the same effective temperature. Is the effective temperature defined through a generalisation of FDR a relevant concept ? Does it depend on the chosen observable, as shown in the glass phase of Bouchaud's trap model (10), or not, as in simulations on a binary Lennard-Jones mixture (39) ? More experimental investigations are needed to understand these contradictory findings (see (40) for a review).

In conclusion, this work provides an experimental and theoretical investigation of the Generalized Einstein Relation in an aging colloidal glass. We interpret the observed deviations from GER as directly related to the change in the glass relaxation times. Deviations are observed in the regime ωτ ∼ 1.

As a final comment, let us add that dynamical heterogeneities are recognized as a general feature of slow dynamics encountered in supercooled liquids and glasses (41; 42; 43). In supercooled liquids, deviations from the Einstein relation were explained by such dynamical heterogeneities (41). Up to now, in models and simulations, deviations from FDR have been found in homogeneous glassy systems and interpreted in terms of an effective temperature. Moreover, the effective temperature is defined as an ensemble-averaged quantity in experiments, models and simulations. Understanding how the concept of effective temperature interplays with such heterogeneities is an open question.

  the displacement x p exp(-iωt) of a piezoelectric stage. Neglecting in a first step the visco-elastic fluid inertia, the fluid displacement x f in the bead vicinity is taken equal to the piezolectric stage displacement x p . The validity of this assumption is discussed in the Appendix. Due to the relative bead/fluid motion, the visco-elastic fluid exerts a sinusoidal force F ′ exp(-iωt) on the bead.

  is the relative chamber wall / bead velocity, and μ(ω) the Fourier transform of the bead mobility.In our range of experimental frequencies (0.5 ≤ f ≤ 10 Hz), the bead inertia is negligible, so that we can simply use the relation F + F ′ = 0 to calculate |μ(ω)| and ϕ(ω). Notice that the motion of the piezoelectric stage is numerically controlled by a sequence of successive sinusoidal signals at five different frequencies {0.5, 1, 2, 5, 10} Hz. The same program synchronously generates a sequence of pulses to trigger the image acquisition, so that the phase shift between the force and the bead movement can be accurately measured. For both the passive and the active microrheology experiments, we used a conventional image processing software (IMAQ vision builder from National Instruments)

Figure 1 (

 1 Figure 1(a) shows the increase in the viscosity modulus with waiting time for a set of six different realizations. The complex mobility of a Laponite suspension at 2.3% wt was measured by applying an oscillatory force on a silica bead in the linear regime. The complex viscosity modulus |η(ω)| was estimated from the complex mobility modulus |μ(ω)| assuming that the Stokes relation μ(ω) =

Fig. 1 .

 1 Fig. 1. (a): Viscosity modulus of the glass as a function of aging time, for six different realizations. The viscosity modulus was measured by applying an oscillatory force at a frequency f = 1 Hz on a silica bead in the linear regime; (b): Rescaling of the complex viscosity modulus. The aging time is linearly stretched t w → t ′ w = αt w

Fig. 2 .

 2 Fig. 2. Mean-squared displacement of 1 µm latex beads immersed in the glass, as a function of time. The curves correspond to different aging times t w = 15, 64, 100, 148, 169 and 186 minutes from top to bottom, measured for one realization. The fluctuating motion is purely diffusive at short t w , and becomes sub-diffusive as the glass ages.

Figure 3

 3 Figure3shows the frequency and aging time dependence of the complex mobility modulus |μ(ω)| and phase ϕ(ω) measured when applying an oscillatory external force at successive frequencies {0.5, 1, 2, 5, 10} Hz. The mobility modulus |μ(ω)| of the bead was found to decrease with aging time t w as shown in Fig.3(a). This corresponds to the increase in the glass visco-elastic modulus. Fig. 3(b) represents the phase shift ϕ(ω) as a function of t w . Starting from zero,

3

  (c) shows the same |μ(ω)| data, plotted as a function of the frequency ω, for different aging times t w . The mobility modulus |μ(ω)| is well fitted by a power law |μ(ω)| = µ 0 (ω/ω 0 ) β in the experimental frequency range corresponding to one and half decade.

  ST and C ST (or R AG and C AG ) are respectively the stationary or aging parts of the response and correlation functions. T is the bath temperature and T * is the temperature associated to FDR when t w /t = O(1).

Fig. 3 .

 3 Fig. 3. Modulus (a) and phase (b) of the complex mobility μ(ω) = |μ(ω)|e iϕ(ω) of the bead as a function of t w , for various frequencies of the applied force; (c) mobility modulus versus ω for various t w ; from top to bottom, t w varies from 8 to 191 min, for this realization. At low t w , |μ(ω)| is nearly independent of ω. Upon increasing t w , the modulus is well fitted by a power-law |μ(ω)| = µ 0 (ω/ω 0 ) β with ω 0 = 1 rad.s -1 and β only depending on t w . The full circles in (b) correspond to ϕ(t w ) = -β(t w )π/2.

28

 28

Fig. 4 .Fig. 5 .

 45 Fig. 4. Top: Brownian motion parameters a and b as a function of aging time, where ∆r 2 (s) = a(s/s 0 ) -b , with s 0 = 1 s -1 ; Bottom : Mobility parameters µ 0 and β as a function of aging time, where μ(ω) = µ 0 (ω/ω 0 ) β exp (-iβπ/2), with ω 0 = 1 rad.s -1 .The results have been averaged over six realizations, and rescaled in aging time.

Fig. 6 .

 6 Fig. 6. Scheme of the relaxation times distribution function P (τ ) in the glass of Laponite (typically 2.5% wt) at different aging times t w . Upon increasing t w , part of the modes distribution, centred around τ slow , shifts towards larger times, while the mode at τ fast ∼ 0.1 ms remains unchanged. The arrow represents the measurements timescale 1/f .

processes, characterized by the distribution of relaxation times in the system, must be considered. In our experiments, deviations are observed when ωτ ∼ 1. This suggests that, besides the waiting time t w , the distribution of relaxation times must be included in models to get an accurate description of aging.

In the past, FDR have been experimentally investigated in the same colloidal glass with electrical and rheological measurements (13). In the dielectric measurements, the effective temperature decreases with t w and ω, and reaches the bath temperature at high frequency and aging times. In the rheological measurements, no deviation from FDR could be detected. More recently, FDR, in the form of a Generalized Stokes-Einstein relation, has been investigated by combining dynamic light scattering and rheological measurements (15). The authors assume that the bulk stress relaxation probed by a rheometer is the same as the local stress relaxation affecting the probe particles. The effective temperature is shown to increase with frequency and aging time in the range t w ∈ [82; 135] min and ω ∈ [20; 100] rad. s -1 for a 3% wt suspension. The authors suggest the existence of two regimes: ωτ ≪ 1 leading to the bath temperature T and ωτ ≫ 1 leading to T eff , which is not consistent with our interpretation despite the authors claim. Other groups have recently investigated the deviations from FDR, by performing a test of the Stokes-Einstein relation, using optical tweezers (16; 17). In one case, they found that no deviation could be detected in the aging colloidal glass over a wide range of frequencies f ∈ [1.2; 12000] Hz. In the other one, deviations are observed at large aging times. Although the reason of these discrepancies have to be elucidated, our experimental findings are fully supported by our interpretation based on microscopic processes probed in light scattering experiments (see Fig. 6).


Simon Rokicki

Erven Rohou

Steven Derrien

Hardware-Accelerated Dynamic Binary Translation

Dynamic Binary Translation (DBT) is often used in hardware/software co-design to take advantage of an architecture model while using binaries from another one. The co-development of the DBT engine and of the execution architecture leads to architecture with special support to these mechanisms. In this work, we propose a hardware accelerated Dynamic Binary Translation where the first steps of the DBT process are fully accelerated in hardware. Results shows that using our hardware accelerators leads to a speed-up of 8× and a cost in energy 18× lower, compared with an equivalent software approach.

I. INTRODUCTION

Dynamic binary translation (DBT) consists in translating -at runtime -a program written for a given instruction set to another instruction set. Dynamic Translation was initially proposed as a means to enable code portability between different instruction sets and can be implemented in software or hardware [START_REF] Bellard | QEMU, a Fast and Portable Dynamic Translator[END_REF], [START_REF] Ebcioglu | DAISY: Dynamic Compilation for 100% Architectural Compatibility[END_REF]. DBT is also used to improve the energy efficiency of high performance processors, as an alternative to out-of-order microarchitectures. In this context, DBT is used to uncover instruction level parallelism (ILP) in the binary program, and then target an energy efficient wide issue VLIW architecture. This approach is used in Transmeta Crusoe [START_REF] Dehnert | The Transmeta Code Morphing Software: Using Speculation, Recovery, and Adaptive Retranslation to Address Real-Life Challenges[END_REF] and NVidia Denver [START_REF] Boggs | Denver: NVIDIA's First 64-bit ARM Processor[END_REF] processors.

Since DBT operates at runtime, its execution time is directly perceptible by the user, hence severely constrained [START_REF] Hu | Reducing Startup Time in Co-Designed Virtual Machines[END_REF]. As a matter of fact, this overhead has often been reported to have a huge impact on actual performance, and is considered as being the main weakness of DBT based solutions. This is particularly true when targeting a VLIW processor: the quality of the generated code depends on efficient scheduling; unfortunately scheduling is known to be the most time-consuming component of a JIT compiler or DBT system (this fact is also confirmed by our experiments, in Section IV).

Improving the responsiveness of such DBT systems is therefore a key research challenge. This is however made very difficult by the lack of open research tools or platform to experiment with such platforms. In this work, we address the two aforementioned issues:

• As opposed to closed commercial solutions such as Crusoe or Denver, we propose an open hardware/software platform supporting DBT. This platform was designed using HLS tools and validated on a FPGA board. Our DBT uses MIPS as host ISA, and targets a 4-issue VLIW architecture 1 . • We show how custom hardware accelerators can be used to improve the reactivity of our optimizing DBT flow. Our results show that, compared to a software implementation, our approach offers speed-up by 8× while consuming 18× less energy. The remainder of this paper is organized as follows, Section II provides some background on DBT and describes our approach from a system-level point of view. Section III details our proposed DBT hardware accelerators, both from an algorithmic and architectural point of view. Section IV presents our experimental results, and Section V discusses related work. Conclusion and future work directions are sketched in Section VI.

II. PROPOSED APPROACH

In this section, we detail our approach to dynamic binary translation and describe its corresponding hardware platform. This platform consists in a hardware-software co-designed DBT framework which operates on MIPS binaries (for convenience) and targets a custom VLIW core.

We first start by providing background information on DBT systems, and follow by an overview of our platform and its main component. We then describe the different stages involved in our DBT strategy, and explain our choice of resorting to hardware acceleration for certain DBT stages.

A. Dynamic Binary Translation

As mentioned in Section I, DBT is traditionally intended to enable efficient execution of non-native binaries. For example, the QEmu [START_REF] Bellard | QEMU, a Fast and Portable Dynamic Translator[END_REF] software enables the execution/emulation of ARM, MIPS, or PowerPC code on Intel x86 hardware. In some cases, DBT can be directly supported by the underlying hardware. For example the IBM Daisy [START_REF] Ebcioglu | DAISY: Dynamic Compilation for 100% Architectural Compatibility[END_REF] processor proposed to use DBT to offer binary compatibility between different generations of VLIW processors (with different issue widths).

More recently DBT was also used as a means to improve the energy efficiency of high performance processors. Instead of relying on a power-hungry out-of-order superscalar microarchitecture, DBT is used to uncover the instruction level parallelism (ILP) available in the binary program, and take advantage of this ILP to target a more energy efficient VLIW micro-architecture. Such an approach was first implemented, for the x86 instruction set, in the Transmeta Crusoe processor [START_REF] Dehnert | The Transmeta Code Morphing Software: Using Speculation, Recovery, and Adaptive Retranslation to Address Real-Life Challenges[END_REF]. The more recent NVidia Denver and Denver 2 processors [START_REF] Boggs | Denver: NVIDIA's First 64-bit ARM Processor[END_REF] also take advantage of this technique, but instead target the ARM instruction set. For both Crusoe and Denver processors, the DBT process is directly managed by the hardware, and is therefore invisible to the user.

Cold code execution is often a major limitation of DBT systems. Indeed, for some applications, most of the code will be executed only a few times. Cycles spent optimizing such code are wasted, since they will never be recouped by faster future invocations. For this reason, DBT systems often define several levels of optimization, starting from a fast translation of source binaries to start execution as soon as possible [START_REF] Hu | Reducing Startup Time in Co-Designed Virtual Machines[END_REF], [START_REF] Ebcioglu | DAISY: Dynamic Compilation for 100% Architectural Compatibility[END_REF]. When the system determines that a sequence of instructions has been -and will likely be -executed often enough, this sequence is further optimized with the hope that the induced speed-up will recoup the cost of this optimization. This idea is very similar to the way the HotSpot JIT compiler works [START_REF] Paleczny | The Java HotSpot Server Compiler[END_REF].

The computational cost of these optimization levels is critical in a DBT system as they determine when/if a given code fragment should be optimized. In this context, running these optimizations faster becomes particularly helpful.

B. Hardware platform

A system level view of the platform is provided in Figure 1. The platform is built around a VLIW core (|) which serves as the execution engine for the translated/optimized binary. This core is loosely based on the Vex architecture [START_REF] Fisher | Embedded computing: a VLIW Approach to Architecture, Compilers and Tools[END_REF] and uses its own instruction format. Our VLIW uses 4 issues, with a nonclustered 64×32 register file. The instruction pipeline has 4 stages.

In order to minimize the impact of the DBT process on the system performance, we make the choice running the DBT engine on a separate customized architecture. The main benefit of this approach is that DBT can be run in parallel with the main program execution, enabling transparent ahead-of-time translation of code.

This customized architecture is based on a small footprint single-issue in-order processor dedicated to the DBT process (x). This DBT processor is enriched with three hardware accelerators: the first-pass translator ({) is in charge of generating a first version of the VLIW code; the IR builder (z) generates an Intermediate Representation (IR) of the source binaries; and the VLIW scheduler (y) uses this IR to perform instruction scheduling and to generate code for the target VLIW instruction set.

These accelerators make the DBT process faster and more energy efficient compared to a software-only implementation. When no DBT is required, the system is able to shut-down this specialized hardware using power-gating, preserving the power efficiency of the platform.

C. Run-time management

Dynamic Binary Translation needs to be both reactive and efficient: it needs to start executing the target program as soon as possible and needs to fully exploit the VLIW capabilities on heavy workloads. For this reason, our DBT framework is organized into several optimization levels. Lower optimization levels generate less efficient code, but execute much faster. Conversely, a frequently executed piece of program/instruction sequence will undergo more aggressive optimizations.

Currently, our framework uses two optimization levels, described below.

1) Cold-code execution: When a new section of binary code is to be executed by the processor, the system has no means to determine if the target code can benefit from aggressive optimizations (neither can it determine if the cost of these optimizations will be easily recouped). Moreover, to ensure the system reactivity, it has to start the execution quickly.

For this reason, the system will first perform a straightforward (i.e. syntactic) translation of MIPS binaries into VLIW binaries without trying to exploit instruction-level parallelism. For this, the DBT processor takes advantage of the first-pass translator which is fully implemented in hardware. The design of this first-pass translator is described in details in subsection III.

The use of an accelerator for the first-pass translator is a key feature to minimize the cost of cold code execution.

2) Heavily-used code: Cold code is instrumented to collect information about frequently executed fragments. Such instrumentation is hidden as much as possible in empty slots of the VLIW code. When hotspots are detected, they are considered for more aggressive optimization. We then build a higher-level Intermediate Representation (IR) of the fragment, appropriate for further processing.

Our main motivation while designing this IR was to make the scheduling step easier to implement in hardware, but also enabling a finer grain DBT process, which could operate at the basic-block level, without having to reconsider the whole procedure.

For each procedure, the IR contains a list of blocks as well as their successors in the control-flow graph. One block has a maximal size of 256 instructions (this impacts design choices in the accelerators, as we will see in subsection III-C). Instructions are encoded using a 128-bit format which also contains intra-block dependency information (e.g. IDs of the instruction predecessors and successors are directly encoded in the instruction). This information is then directly used by the instruction scheduler to extract ILP.

This IR is generated by the IR builder accelerator, whose operating principle is similar to that of the first-pass translator. However, while scanning instructions within a basic-block, it also keeps track of intra-block register-level def/use information. The accelerator then builds the extended instruction representation accordingly.

Once the IR is generated, the VLIW scheduler is called on each basic block independently. It operates on the block IR and schedules instructions according to available resources and instruction dependencies. More details about its implementation are provided in subsection III-C. The generated code can then be executed by the VLIW core.

It is important to note that IR generation can only be done when block boundaries are known. This information is collected by the first-pass translator. For this reason, when an indirect jump is met that invalidates boundaries, the system has to invalidate the generated IR and to start again with the correct boundaries.

Building the IR and extracting ILP in hardware make the overall DBT significantly faster, hence more reactive because there is less overhead to recoup in future invocations. As a consequence, application code benefits from higher optimization level earlier.

III. HARDWARE ACCELERATORS

A hardware/software co-designed DBT system is obviously a very complex design, which would be out of reach of an academic research project if designed at RTL level using HDL or similar tools. In this work, we therefore made the choice of designing our system (almost) entirely with Mentor Catapult-C High Level Synthesis technology [START_REF] Bollaert | Catapult Synthesis: A Practical Introduction to Iterative C Synthesis[END_REF]. This choice helped us focus our effort on key issues: minimizing the accelerator latency, while maintaining resource cost at reasonable levels.

We first developed the transformation in C and then performed the following modifications:

• Transforming array of structures into structures of arrays, and use array indexing as a replacement for pointers. • Increasing memory bandwith through array and memory bank partitioning. • Pipelining all loops with minimal Initiation Interval. This requires some refactoring to merge memory accesses and some explicit forwarding mechanisms along with pragma annotations to guide the HLS tool. In the following we describe the three accelerators (firstpass translator, IR builder, VLIW scheduler) that are implemented in our DBT system. Our description addresses both hardware and algorithmic design choices, and their impact on performance and resource cost.

A. The First-pass translator

The role of the first-pass translator is to parse MIPS instructions and, for each of them, extract opcode, registers and immediate data. This information is then used to regenerate native VLIW instructions. Since not all MIPS instruction have a VLIW equivalent, they must be lowered into a sequence of native VLIW instructions. For example, bltz will be translated into cmplt and brez in the VLIW instruction set. In addition, whenever the accelerator identifies a jump or call instruction, it stores the source and destination addresses in a dedicated memory. The content of this memory is later used by the IR builder to identify block-boundaries. From a hardware point of view, this is easily implemented using Finite State Machines, and does not represent a real design challenge. For example our design takes between one and two cycles per MIPS instruction (a more detailed quantitative analysis is provided in Section IV).

B. The IR builder

The main difference between the first-pass translator and the IR builder is that the first one performs a straightforward translation while the second one has to construct a more complex representation including instruction level dependencies.

To obtain this information, we use a simple algorithm that keeps track of registers def/use relations as it iterates over the instructions of a basic-block. Our algorithm works as follows: for each of the 32 MIPS registers, the IR builder stores within a table the following information:

• lastWriter corresponds to the Id (its offset within the block) of the last instruction that wrote in that register. • lastReads contains the list of IDs of the last three instructions that read that register, along with 2-bit value used to indicate how many actual reads are stored. The choice of the maximum number of stored reads is a trade-off: storing more reads may lead to more accurate dependencies but also increases the maximal number of dependencies added for a single instruction, which is the bottleneck of the IR builder, as we will see below. Each analyzed instruction has at most one write in a register and two reads. The left part of Figure 2 shows different steps (labelled x to |) and accesses to entries (dashed arrows) needed to handle one read or one write.

When the accelerator analyzes an instruction which writes in a given register, it will gather the IDs of the last writer and the last three readers of the register (x). Then the current instruction is marked as the last writer of the register (y). The accelerator will then flag up to three dependencies in the IR: one from each previous reader, and if there is no reader, one from the last writer (y to |). Note that adding a dependency requires reading the IR and updating the value on the next cycle, which involves two memory accesses.

When the accelerator decodes an instruction which reads a given register, it will gather the IDs of the last writer and the three last readers of the register (x). While handling a read, the accelerator only adds one dependency in the IR (y and z). If the maximum number of readers in lastReads is reached, the oldest of the previous reader is evicted and will be the source of the dependency. Otherwise, the source of the dependency is the last writer. Finally, the current instruction is added in lastReads ({).

The accelerator also uses a similar mechanism to preserve the order of loads and stores on memory. However, as store instructions do not write registers and load instructions only read one register, they do not increase the maximal number of dependencies which are added for a given instruction.

Our design is heavily pipelined to minimize the execution time of the IR building phase. To eliminate the memory port conflicts that limit the pipeline through-put, we used distinct banks for all fields and for the IR. This is illustrated in Figure 2 along with the pipelined schedule of our accelerator (for two reads and one write). The right left part represent memory accesses (dashed arrows) required to handle a read or a write in a register. Using a dual-port memory for storing the IR and two single-ported banks for lastWriter and lastReads helped us reach an initiation interval of 5 (e.g. a new instruction is treated every 5 cycles).

C. The VLIW scheduler

The key component of our hardware accelerated DBT consists of the VLIW scheduling accelerator, which implements a greedy scheduling algorithm similar to list-scheduling. The scheduler operates on blocks exposed in the IR and produces a sequence of VLIW bundles.

Figure 3 depicts the internal memory organization within our accelerator, which consists of five distinct memory blocks:

• IR: memory containing the IR of the current instruction block to be executed, • sortedList: sorted list containing all the instructions that are ready to be scheduled, sorted by priority, • resTable: reservation table which keeps track of all pending instructions, • nbDep: number of dependencies of each instruction,

• readyInstr: FIFO containing instructions which have no more dependencies and have to be inserted in the sorted list. Scheduling is decomposed into three main stages: 1) The instruction insertion stage reads a ready instruction (Figure 3, x), finds a location (start or end) in the list (y) and inserts the instruction (z) at this location.

2) The scheduling stage retrieves, from the sorted list, the instruction with the highest priority, and allocates it to an available functional unit. 3) Finally, the successor reduction stage considers every successor of all the finishing instructions in the reservation table (|), reads their current number of dependencies (}), decrements it and if this value reaches 0, inserts the instruction in the readyInstr FIFO (~). All the data-structures used by the VLIW scheduler are stored in a custom memory block within the accelerator. Figure 3 indicates the size of each of these blocks. Their size is directly related to the design choices of the IR format. The size of IR and nbDep memory blocks corresponds to the maximal size allowed for blocks. If a block with more than 256 instructions is met, it will simply be split into two blocks, which may lead to lower performance. The size of the resTable memory block is related to VLIW structure: for example, with a 4-way VLIW with a 4-cycle pipeline depth, the reservation table stores up to 4 × 4 instructions. In contrast, the size of sortedList and readyInstr blocks are arbitrary and are therefore design-time parameters: reducing this size saves area but may also impact performance if they get full.

IV. EXPERIMENTAL RESULTS

We have evaluated our approach both in terms of cost and performance. In our context, performance refers to (i) the impact of DBT optimizations on application execution speed, and (ii) the DBT reactivity (i.e. DBT execution time). As far as cost is concerned, we considered both silicon area and energy efficiency. The section starts by a short description of our hardware platform and is followed by our performance and cost results.

A. Hardware prototype

As mentioned in Section II, we have developed a fully functional hardware prototype of our system. Since a detailed description of the platform is not possible given the current page limits, this document only provides a short description of its structure and its components.

Our platform is prototyped on a Altera based board (DE2-115 with Cyclone IV). The design uses a combination of Altera IPs (memory, Avalon bus interconnect, NIOS processor) and custom hardware components designed using Catapult-C HLS tool. All our custom hardware IPs communicate through small on-chip shared memory banks, and we used a NIOS-II processor as DBT processor for ease of development.

This prototype can operate at clock speed up to 41 MHz. The critical path of the design is caused by our VLIW processor IP (the DBT accelerators can run faster)2 . We do not provide FPGA result since they are not relevant, and refer the reader to section IV-D where we discuss 65 nm ASIC area results.

B. Benchmarks

We validated our flow over a set of 10 kernels taken from the Mediabench suite [START_REF] Lee | MediaBench: A Tool for Evaluating and Synthesizing Multimedia and Communications Systems[END_REF]. These were compiled for a MIPS target with GCC 4.0.2 at -O3 level. Table I provides the number of instructions and the number of blocks of these benchmarks.

C. DBT reactivity improvements

Our first set of experiments aims at quantifying the impact of hardware acceleration on the reactivity of our DBT system. To do so we used hardware monitors to obtain accurate timing information for each one of our two optimization levels. We collected results for two scenarios: one assuming that the DBT is executed directly on the VLIW core (this is our baseline, without dedicated processor and accelerators), the other one using our hardware accelerators.

Figure 4 summarizes the results that we obtained for a set of 10 benchmarks. Results show that the average execution time for the first-step translator is reduced by two orders of magnitude (between 115×-180× faster). These results are not surprising, given the type of operations (bitlevel manipulation and comparison) involved in this stage. For the IR builder stage, we also observe impressive speedup with performance improvements in the 30×-34× range. Interestingly, our VLIW scheduler brings only a "modest" speedup of 5×. This may question the relevance of using hardware acceleration for this stage. However, it is important to remember that scheduling represents more than 50% of DBT workload in pure software. According to Amdahl's law, improving scheduling performance is therefore as important as for other steps.

In addition to performance improvements, we also propose to quantify the average number of cycles needed by the DBT system to translate a single MIPS instruction. For the optimization level 0, the first-pass translator requires only an average of 1.2 cycles per instruction. In other words, Fig. 4. Speed-up from accelerators (higher is better; log scale). First-pass (opt. level 0) benefits the most from hardware acceleration (over 100×), generating non-optimized code, but providing reactivity. Acceleration is less dramatic for VLIW Scheduler (opt. level 1), still very significant, in the order of 5.5×.

DBT can be very reactive if the user agrees to sacrifice performance. Results for the optimization level 1 are illustrated in Figure 5. They show that the IR builder and the VLIW scheduler require an average of 111 cycles per instruction, an improvement of almost one order of magnitude over a software only implementation. As mentioned in SubSection II-C, this is an important improvement, as the application code will benefit from higher optimization level much earlier.

D. DBT area cost

Custom hardware accelerators obviously come at a price in terms of resource usage. Since FPGA resource costs are not really relevant, we have collected area costs for 65 nm ASIC using Design Compiler for all our IPs including the VLIW core. Our results, illustrated on Figure 6, show that the total area overhead of our DBT system is equivalent to that of a 4-issue VLIW core. Note that the DBT platform is able to generate code for wider issue VLIWs (up to 8-issue), so its relative cost can be even lower.

Also, to the difference of the VLIW core, the scheduler algorithm involves complex control structures (chained lists) and exhibits a highly data behavior. It is widely recognized that for such algorithms, even modern High Level Synthesis tools still fail at offering quality of results comparable to hand written RTL code 3 . Our prior experiment with these tools suggest that an area-optimized RTL implementation is likely to reduce the area by a 2× to 4× factor. This would of course come at the cost of a development effort which is out-of-reach for a typical academic research project.

E. Energy efficiency improvement

In order to measure the improvement of our platform in the energy cost of a DBT, we run power and energy estimation for our DBT system (the DBT processor and the different accelerators) assuming a 65 nm ASIC technology as target. The design was synthesized with Design Compiler with a target frequency of 250 MHz. Power estimations were obtained from Gate-level simulations of the whole system.

To quantify the energy benefits of our hardware assisted DBT, we compared hardware and software energy cost of our three DBT stages. Figure 7 represents the energy efficiency improvement offered by the hardware accelerators. We observe that, when executed using custom hardware, the first-pass translation (resp. the IR building) uses 250× (resp. 78×) less energy than their VLIW software counterparts. Similarly, the hardware accelerated scheduling step is 11× more energy efficient.

Since one of the motivations behind the use DBT based processor architecture is energy efficiency, reducing the energy cost of DBT itself is of prime importance. VLIW Scheduler Energy-efficiency improvement Fig. 7. Energy-efficiency (ratio of consumed energy non-accelerated vs. accelerated, higher is better; log scale) improvement from accelerators. Behaviors are similar to speedups (Figure 4): first-pass benefits from a dramatic improvement, making initial code generation very cheap. Further optimizations levels still benefit from significantly improved energy efficiency.

F. Performance of DBT generated code

Since the aim of our optimizing DBT system is to improve performance, we also evaluated how much performance improvement we could obtain by taking advantage of the VLIW core. The results that we obtained are provided in Figure 8. They show that an average of 80 % performance improvement can be achieved against the non-optimized DBT (i.e. with only first-pass stage activated) for our 4-issue VLIW core. Our DBT engine at optimization level 1 has the capability to deliver speed-ups up to 3× the naive code generator. Several benchmarks do not benefit such performance, for two main reasons: first, good performance on VLIW requires large basic blocks; second, the MIPS binary we take as input has fewer registers, which introduces false dependencies. In future work, we will perform register allocation and apply optimizations such as loop unrolling and superblock formation. Thanks to the flexibility provided by the DBT processor, these optimizations will be rather straightforward to implement.

V. DISCUSSION AND RELATED WORK

Transmeta Crusoe [START_REF] Dehnert | The Transmeta Code Morphing Software: Using Speculation, Recovery, and Adaptive Retranslation to Address Real-Life Challenges[END_REF] and NVidia Denver [START_REF] Boggs | Denver: NVIDIA's First 64-bit ARM Processor[END_REF] architectures are the two most similar works we found. They both aim at a transparent execution of legacy binaries on a VLIW architecture. Their hardware/software co-designed system is customized to handle efficiently main challenges of the DBT.

Transmeta co-designed the Crusoe architecture and the Code Morphing Software. It proposes hardware mechanisms for speculation and recovery, precise exception management, handling memory mapped I/O and self-modifying code [START_REF] Dehnert | The Transmeta Code Morphing Software: Using Speculation, Recovery, and Adaptive Retranslation to Address Real-Life Challenges[END_REF].

NVidia's Denver architecture uses a 7-issue VLIW-like architecture. In order to execute ARM binaries, the processor includes an ARM ISA decoder that can decode up to two instructions per cycle. These decoded instructions are translated into an extended Internal Representation (IR) used as an input to the optimizer. This IR is stored in an internal cache and can be modified by another process in charge of continuous optimization. Whenever the code is executed again, optimized code is used instead of ARM instructions, resulting in a better utilization of all seven execution units available [START_REF] Boggs | Denver: NVIDIA's First 64-bit ARM Processor[END_REF]. Our approach shares common points with Denver architecture: the use of an intermediate extended IR and the use of customized hardware for handling cold-code execution.

One of the main challenges of DBT is its startup time (e.g. performance on cold-code). For example, IBM Daisy [START_REF] Ebcioglu | DAISY: Dynamic Compilation for 100% Architectural Compatibility[END_REF] requires up to 4k instructions to translate a single source instruction. The solution to reduce start-up time is to define several optimization levels: cold-code is optimized only once, while hotspots go through upper optimization levels, to produce more efficient code, at higher price. The same idea drives JIT compilers [START_REF] Paleczny | The Java HotSpot Server Compiler[END_REF]. However, there are several approaches on how to handle the first optimization level, which will be critical for cold-code execution.

A common approach, is to start execution with code interpretation [START_REF] Kim | Dynamic Binary Translation for Accumulator-Oriented Architectures[END_REF], [START_REF] Paleczny | The Java HotSpot Server Compiler[END_REF]. This removes translation overhead when executing cold code but leads to inefficient execution. Moreover, this loss of efficiency will never be recouped because future execution of the same code will still require interpretation.

Another common approach is to generate a first naive translation of the binaries [START_REF] Dehnert | The Transmeta Code Morphing Software: Using Speculation, Recovery, and Adaptive Retranslation to Address Real-Life Challenges[END_REF], [START_REF] Ditzel | Experience with Dynamic Binary Translation[END_REF], [START_REF] Baraz | IA-32 Execution Layer: A Two-phase Dynamic Translator Designed to Support IA-32 Applications on Itanium R -based Systems[END_REF], [START_REF] Hu | Reducing Startup Time in Co-Designed Virtual Machines[END_REF]. Contrary to interpretation, this approach requires a translation overhead which is as small as possible. However, this overhead may be recouped because future execution of the same piece of code will use this translated code.

Finally, several approaches choose to use (low-performance) native execution on their first optimization stage [START_REF] Boggs | Denver: NVIDIA's First 64-bit ARM Processor[END_REF], [START_REF] Wu | A HW/SW Co-designed Heterogeneous Multi-core Virtual Machine for Energy-Efficient General Purpose Computing[END_REF]. Their proposed architecture offers ways to execute natively the binary code with low performance and to translate and optimize hotspot for another more efficient microarchitecture (here VLIW).

In our work, we generate a first naive translation of the code for cold-code execution. However, our main contribution is to go further by offering a second cheap optimization level, which produces much more efficient code at reasonable price, thanks to dedicated hardware accelerators.

Our approach also has some connections with earlier works on JIT compilers targeting VLIW machines, which aimed at defining very fast, yet efficient scheduling heuristics [START_REF] Dupont De Dinechin | Inter-Block Scoreboard Scheduling in a JIT Compiler for VLIW Processors[END_REF], [START_REF] Agosta | JIST: Just-In-Time scheduling translation for parallel processors[END_REF]. These two approaches identified instruction scheduling as one of the main bottlenecks when dynamically generating binaries for VLIW. They both use greedy algorithms to schedule instructions. Transmeta's Code Morphing Software also used greedy instruction scheduling on its first optimization level but switched to a smarter algorithm when generating more efficient code [START_REF] Ditzel | Experience with Dynamic Binary Translation[END_REF].

Last, VLIW support in DBT was also addressed by Michel et al. [START_REF] Michel | Fast Simulation of Systems Embedding VLIW Processors[END_REF], who studied extensions needed to handle VLIW processors. Their goal largely differs from us since they aim at the dynamic translation of VLIW ISA (e.g. TI C6x DSPs) with x86 ISA as a target (for fast simulation purposes).

VI. CONCLUSION

We propose a hardware-accelerated DBT platform targeting VLIW architectures. Our approach exploits customized hardware to reduce the overhead of generating scheduled code and make DBT more reactive. Translation of a binary section is 8× faster and consumes 18× less energy than an equivalent pure-software approach. The FPGA prototype of the platform as well as all C/C++ sources are available on GitHub to ease reproducibility and encourage future work/experimentation on hardware/software co-design DBT systems. Future work will focus on implementing several basic optimization passes to extract more ILP from MIPS binaries and study how they interact with hardware accelerators.

Fig. 1 .

 1 Fig. 1. Overview of the hardware DBT platform.

Fig. 2 .

 2 Fig. 2. High-level view of the IR builder. The left part represents steps to handle reads and writes in registers, the right part represents a schedule of these different steps.

Fig. 3 .

 3 Fig. 3. Simplified view of our hardware VLIW scheduler.

Fig. 5 .

 5 Fig. 5. DBT cycle count to reach different optimization levels

Fig. 6 .

 6 Fig. 6. Area utilization of different entities in the platform.

Fig. 8 .

 8 Fig. 8. Speed-up with optimization level 1 compared to level 0

The whole platform (source code, and HDL for IPs) is availlable at https://github.com/srokicki/HybridDBT.

We believe this can be considered a good result given our choice of a (rather old) FPGA technology, and the fact that almost all the IPs (but the NIOS-II) were designed with HLS.

This is especially true for area, modern tools are more competitive when it comes to latency and clock speed.