%!PS-Adobe-3.0
%%Title: (ThermoTutorial1.wrd)
%%Creator: (Microsoft Word: LaserWriter 8 8.2)
%%CreationDate: (5:10 PM Tuesday, December 6, 1994)
%%For: (Henry Baker)
%%Pages: 6
%%DocumentFonts: Times-Roman Symbol Times-Italic Times-Bold Helvetica-Bold Helvetica Courier
%%DocumentNeededFonts: Times-Roman Symbol Times-Italic Times-Bold Helvetica-Bold Helvetica Courier
%%DocumentSuppliedFonts:
%%DocumentData: Clean7Bit
%%PageOrder: Ascend
%%Orientation: Portrait
%%DocumentMedia: Default 612 792 0 () ()
%ADO_ImageableArea: 31 31 583 761
%%EndComments
userdict begin/dscInfo 5 dict dup begin
/Title(ThermoTutorial1.wrd)def
/Creator(Microsoft Word: LaserWriter 8 8.2)def
/CreationDate(5:10 PM Tuesday, December 6, 1994)def
/For(Henry Baker)def
/Pages 1 def
end def end
save
/version23-manualfeedpatch where { pop false } { true }ifelse
% we don't do an explicit 'get' since product and version MAY
% be in systemdict or statusdict - this technique gets the lookup
% without failure
statusdict begin
product (LaserWriter) eq % true if LaserWriter
version cvr 23.0 eq % true if version 23
end
and % only install this patch if both are true
and % true only if patch is not installed and is for this printer
% save object and boolean on stack
dup { exch restore }if
% either true OR saveobject false
dup
{
/version23-manualfeedpatch true def
/oldversion23-showpage /showpage load def
/showpage % this showpage will wait extra time if manualfeed is true
{%
statusdict /manualfeed known
{% manualfeed known in statusdict
statusdict /manualfeed get
{% if true then we loop for 5 seconds
usertime 5000 add % target usertime
{ % loop
dup usertime sub 0 lt
{ exit }if
}loop
pop % pop the usertime off the stac
}if
}if
oldversion23-showpage
}bind def
}if
not{ restore }if
/md 193 dict def md begin/currentpacking where {pop /sc_oldpacking currentpacking def true setpacking}if
%%BeginFile: adobe_psp_basic
%%Copyright: Copyright 1990-1993 Adobe Systems Incorporated. All Rights Reserved.
/bd{bind def}bind def
/xdf{exch def}bd
/xs{exch store}bd
/ld{load def}bd
/Z{0 def}bd
/T/true
/F/false
/:L/lineto
/lw/setlinewidth
/:M/moveto
/rl/rlineto
/rm/rmoveto
/:C/curveto
/:T/translate
/:K/closepath
/:mf/makefont
/gS/gsave
/gR/grestore
/np/newpath
14{ld}repeat
/$m matrix def
/av 81 def
/por true def
/normland false def
/psb-nosave{}bd
/pse-nosave{}bd
/us Z
/psb{/us save store}bd
/pse{us restore}bd
/level2
/languagelevel where
{
pop languagelevel 2 ge
}{
false
}ifelse
def
/featurecleanup
{
stopped
cleartomark
countdictstack exch sub dup 0 gt
{
{end}repeat
}{
pop
}ifelse
}bd
/noload Z
/startnoload
{
{/noload save store}if
}bd
/endnoload
{
{noload restore}if
}bd
level2 startnoload
/setjob
{
statusdict/jobname 3 -1 roll put
}bd
/setcopies
{
userdict/#copies 3 -1 roll put
}bd
level2 endnoload level2 not startnoload
/setjob
{
1 dict begin/JobName xdf currentdict end setuserparams
}bd
/setcopies
{
1 dict begin/NumCopies xdf currentdict end setpagedevice
}bd
level2 not endnoload
/pm Z
/mT Z
/sD Z
/realshowpage Z
/initializepage
{
/pm save store mT concat
}bd
/endp
{
pm restore showpage
}def
/$c/DeviceRGB def
/rectclip where
{
pop/rC/rectclip ld
}{
/rC
{
np 4 2 roll
:M
1 index 0 rl
0 exch rl
neg 0 rl
:K
clip np
}bd
}ifelse
/rectfill where
{
pop/rF/rectfill ld
}{
/rF
{
gS
np
4 2 roll
:M
1 index 0 rl
0 exch rl
neg 0 rl
fill
gR
}bd
}ifelse
/rectstroke where
{
pop/rS/rectstroke ld
}{
/rS
{
gS
np
4 2 roll
:M
1 index 0 rl
0 exch rl
neg 0 rl
:K
stroke
gR
}bd
}ifelse
%%EndFile
%%BeginFile: adobe_psp_colorspace_level1
%%Copyright: Copyright 1991-1993 Adobe Systems Incorporated. All Rights Reserved.
/G/setgray ld
/:F/setrgbcolor ld
%%EndFile
%%BeginFile: adobe_psp_uniform_graphics
%%Copyright: Copyright 1990-1993 Adobe Systems Incorporated. All Rights Reserved.
/@a
{
np :M 0 rl :L 0 exch rl 0 rl :L fill
}bd
/@b
{
np :M 0 rl 0 exch rl :L 0 rl 0 exch rl fill
}bd
/arct where
{
pop
}{
/arct
{
arcto pop pop pop pop
}bd
}ifelse
/x1 Z
/x2 Z
/y1 Z
/y2 Z
/rad Z
/@q
{
/rad xs
/y2 xs
/x2 xs
/y1 xs
/x1 xs
np
x2 x1 add 2 div y1 :M
x2 y1 x2 y2 rad arct
x2 y2 x1 y2 rad arct
x1 y2 x1 y1 rad arct
x1 y1 x2 y1 rad arct
fill
}bd
/@s
{
/rad xs
/y2 xs
/x2 xs
/y1 xs
/x1 xs
np
x2 x1 add 2 div y1 :M
x2 y1 x2 y2 rad arct
x2 y2 x1 y2 rad arct
x1 y2 x1 y1 rad arct
x1 y1 x2 y1 rad arct
:K
stroke
}bd
/@i
{
np 0 360 arc fill
}bd
/@j
{
gS
np
:T
scale
0 0 .5 0 360 arc
fill
gR
}bd
/@e
{
np
0 360 arc
:K
stroke
}bd
/@f
{
np
$m currentmatrix
pop
:T
scale
0 0 .5 0 360 arc
:K
$m setmatrix
stroke
}bd
/@k
{
gS
np
:T
0 0 :M
0 0 5 2 roll
arc fill
gR
}bd
/@l
{
gS
np
:T
0 0 :M
scale
0 0 .5 5 -2 roll arc
fill
gR
}bd
/@m
{
np
arc
stroke
}bd
/@n
{
np
$m currentmatrix
pop
:T
scale
0 0 .5 5 -2 roll arc
$m setmatrix
stroke
}bd
%%EndFile
%%BeginFile: adobe_psp_basic_text
%%Copyright: Copyright 1990-1993 Adobe Systems Incorporated. All Rights Reserved.
/S/show ld
/A{
0.0 exch ashow
}bd
/R{
0.0 exch 32 exch widthshow
}bd
/W{
0.0 3 1 roll widthshow
}bd
/J{
0.0 32 4 2 roll 0.0 exch awidthshow
}bd
/V{
0.0 4 1 roll 0.0 exch awidthshow
}bd
/fcflg true def
/fc{
fcflg{
vmstatus exch sub 50000 lt{
(%%[ Warning: Running out of memory ]%%\r)print flush/fcflg false store
}if pop
}if
}bd
/$f[1 0 0 -1 0 0]def
/:ff{$f :mf}bd
/MacEncoding StandardEncoding 256 array copy def
MacEncoding 39/quotesingle put
MacEncoding 96/grave put
/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis/Udieresis/aacute
/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute/egrave
/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde/oacute
/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex/udieresis
/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls
/registered/copyright/trademark/acute/dieresis/notequal/AE/Oslash
/infinity/plusminus/lessequal/greaterequal/yen/mu/partialdiff/summation
/product/pi/integral/ordfeminine/ordmasculine/Omega/ae/oslash
/questiondown/exclamdown/logicalnot/radical/florin/approxequal/Delta/guillemotleft
/guillemotright/ellipsis/space/Agrave/Atilde/Otilde/OE/oe
/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide/lozenge
/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright/fi/fl
/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand
/Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex/Idieresis/Igrave
/Oacute/Ocircumflex/apple/Ograve/Uacute/Ucircumflex/Ugrave/dotlessi/circumflex/tilde
/macron/breve/dotaccent/ring/cedilla/hungarumlaut/ogonek/caron
MacEncoding 128 128 getinterval astore pop
level2 startnoload
/copyfontdict
{
findfont dup length dict
begin
{
1 index/FID ne{def}{pop pop}ifelse
}forall
}bd
level2 endnoload level2 not startnoload
/copyfontdict
{
findfont dup length dict
copy
begin
}bd
level2 not endnoload
md/fontname known not{
/fontname/customfont def
}if
/Encoding Z
/:mre
{
copyfontdict
/Encoding MacEncoding def
fontname currentdict
end
definefont :ff def
}bd
/:bsr
{
copyfontdict
/Encoding Encoding 256 array copy def
Encoding dup
}bd
/pd{put dup}bd
/:esr
{
pop pop
fontname currentdict
end
definefont :ff def
}bd
/scf
{
scalefont def
}bd
/scf-non
{
$m scale :mf setfont
}bd
/ps Z
/fz{/ps xs}bd
/sf/setfont ld
/cF/currentfont ld
/mbf
{
/makeblendedfont where
{
pop
makeblendedfont
/ABlend exch definefont
}{
pop
}ifelse
def
}def
%%EndFile
%%BeginFile: adobe_psp_derived_styles
%%Copyright: Copyright 1990-1993 Adobe Systems Incorporated. All Rights Reserved.
/wi
version(23.0)eq
{
{
gS 0 0 0 0 rC stringwidth gR
}bind
}{
/stringwidth load
}ifelse
def
/$o 1. def
/gl{$o G}bd
/ms{:M S}bd
/condensedmtx[.82 0 0 1 0 0]def
/:mc
{
condensedmtx :mf def
}bd
/extendedmtx[1.18 0 0 1 0 0]def
/:me
{
extendedmtx :mf def
}bd
/basefont Z
/basefonto Z
/dxa Z
/dxb Z
/dxc Z
/dxd Z
/dsdx2 Z
/bfproc Z
/:fbase
{
dup/FontType get 0 eq{
dup length dict begin
dup{1 index/FID ne 2 index/UniqueID ne and{def}{pop pop}ifelse}forall
/FDepVector exch/FDepVector get[exch/:fbase load forall]def
}/bfproc load ifelse
/customfont currentdict end definefont
}bd
/:mo
{
/bfproc{
dup dup length 2 add dict
begin
{
1 index/FID ne 2 index/UniqueID ne and{def}{pop pop}ifelse
}forall
/PaintType 2 def
/StrokeWidth .012 0 FontMatrix idtransform pop def
/customfont currentdict
end
definefont
8 dict begin
/basefonto xdf
/basefont xdf
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/Encoding StandardEncoding def
/BuildChar
{
exch begin
basefont setfont
( )dup 0 4 -1 roll put
dup wi
setcharwidth
0 0 :M
gS
gl
dup show
gR
basefonto setfont
show
end
}def
}store :fbase
}bd
/:mso
{
/bfproc{
7 dict begin
/basefont xdf
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/Encoding StandardEncoding def
/BuildChar
{
exch begin
sD begin
/dxa 1 ps div def
basefont setfont
( )dup 0 4 -1 roll put
dup wi
1 index 0 ne
{
exch dxa add exch
}if
setcharwidth
dup 0 0 ms
dup dxa 0 ms
dup dxa dxa ms
dup 0 dxa ms
gl
dxa 2. div dup ms
end
end
}def
}store :fbase
}bd
/:ms
{
/bfproc{
dup dup length 2 add dict
begin
{
1 index/FID ne 2 index/UniqueID ne and{def}{pop pop}ifelse
}forall
/PaintType 2 def
/StrokeWidth .012 0 FontMatrix idtransform pop def
/customfont currentdict
end
definefont
8 dict begin
/basefonto xdf
/basefont xdf
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/Encoding StandardEncoding def
/BuildChar
{
exch begin
sD begin
/dxb .05 def
basefont setfont
( )dup 0 4 -1 roll put
dup wi
exch dup 0 ne
{
dxb add
}if
exch setcharwidth
dup dxb .01 add 0 ms
0 dxb :T
gS
gl
dup 0 0 ms
gR
basefonto setfont
0 0 ms
end
end
}def
}store :fbase
}bd
/:mss
{
/bfproc{
7 dict begin
/basefont xdf
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/Encoding StandardEncoding def
/BuildChar
{
exch begin
sD begin
/dxc 1 ps div def
/dsdx2 .05 dxc 2 div add def
basefont setfont
( )dup 0 4 -1 roll put
dup wi
exch dup 0 ne
{
dsdx2 add
}if
exch setcharwidth
dup dsdx2 .01 add 0 ms
0 .05 dxc 2 div sub :T
dup 0 0 ms
dup dxc 0 ms
dup dxc dxc ms
dup 0 dxc ms
gl
dxc 2 div dup ms
end
end
}def
}store :fbase
}bd
/:msb
{
/bfproc{
7 dict begin
/basefont xdf
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/Encoding StandardEncoding def
/BuildChar
{
exch begin
sD begin
/dxd .03 def
basefont setfont
( )dup 0 4 -1 roll put
dup wi
1 index 0 ne
{
exch dxd add exch
}if
setcharwidth
dup 0 0 ms
dup dxd 0 ms
dup dxd dxd ms
0 dxd ms
end
end
}def
}store :fbase
}bd
/italicmtx[1 0 -.212557 1 0 0]def
/:mi
{
italicmtx :mf def
}bd
/:v
{
[exch dup/FontMatrix get exch
dup/FontInfo known
{
/FontInfo get
dup/UnderlinePosition known
{
dup/UnderlinePosition get
2 index 0
3 1 roll
transform
exch pop
}{
.1
}ifelse
3 1 roll
dup/UnderlineThickness known
{
/UnderlineThickness get
exch 0 3 1 roll
transform
exch pop
abs
}{
pop pop .067
}ifelse
}{
pop pop .1 .067
}ifelse
]
}bd
/$t Z
/$p Z
/$s Z
/:p
{
aload pop
2 index mul/$t xs
1 index mul/$p xs
.012 mul/$s xs
}bd
/:m
{gS
0 $p rm
$t lw
0 rl stroke
gR
}bd
/:n
{
gS
0 $p rm
$t lw
0 rl
gS
gl
stroke
gR
strokepath
$s lw
/setstrokeadjust where{pop
currentstrokeadjust true setstrokeadjust stroke setstrokeadjust
}{
stroke
}ifelse
gR
}bd
/:o
{gS
0 $p rm
$t 2 div dup rm
$t lw
dup 0 rl
stroke
gR
:n
}bd
%%EndFile
/currentpacking where {pop sc_oldpacking setpacking}if end
%%EndProlog
%%BeginSetup
md begin
countdictstack[{
%%BeginFeature: *ManualFeed False
statusdict /manualfeed false put
%%EndFeature
}featurecleanup
countdictstack[{
%%BeginFeature: *InputSlot Cassette
%%EndFeature
}featurecleanup
countdictstack[{
%%BeginFeature: *PageRegion LetterSmall
lettersmall
%%EndFeature
}featurecleanup
(Henry Baker)setjob
/mT[1 0 0 -1 31 761]def
/sD 16 dict def
300 level2{1 dict dup/WaitTimeout 4 -1 roll put setuserparams}{statusdict/waittimeout 3 -1 roll put}ifelse
%%IncludeFont: Times-Roman
%%IncludeFont: Symbol
%%IncludeFont: Times-Italic
%%IncludeFont: Times-Bold
%%IncludeFont: Helvetica-Bold
%%IncludeFont: Helvetica
%%IncludeFont: Courier
/f0_1/Times-Roman
:mre
/f0_12 f0_1 12 scf
/f0_9 f0_1 9 scf
/f0_8 f0_1 8 scf
/f0_7 f0_1 7 scf
/f1_1/Symbol
:bsr
240/apple pd
:esr
/f1_12 f1_1 12 scf
/f1_9 f1_1 9 scf
/f1_8 f1_1 8 scf
/f2_1/Times-Italic
:mre
/f2_12 f2_1 12 scf
/f2_8 f2_1 8 scf
/f2_7 f2_1 7 scf
/f3_1 f1_1
:mi
/f3_12 f3_1 12 scf
/f3_8 f3_1 8 scf
/f4_1/Times-Bold
:mre
/f4_12 f4_1 12 scf
/f5_1 f1_1
def
/f5_12 f5_1 12 scf
/f6_1/Helvetica-Bold
:mre
/f6_10 f6_1 10 scf
/f7_1/Helvetica
:mre
/f7_12 f7_1 12 scf
/f7_8 f7_1 8 scf
/f8_1/Courier
:mre
/f8_8 f8_1 8 scf
/f8_6 f8_1 6 scf
/Courier findfont[10 0 0 -10 0 0]:mf setfont
%%EndSetup
%%Page: 1 1
%%BeginPageSetup
initializepage
(Henry Baker; page: 1 of 6)setjob
%%EndPageSetup
gS 0 0 552 730 rC
37 16 :M
f0_12 sf
(ACM )S
f2_12 sf
(Sigplan Notices)S
143 16 :M
f0_12 sf
( )S
f4_12 sf
(29)S
f0_12 sf
(,4 \(April 1994\), 58-63.)S
37 723 :M
f0_8 sf
(Copyright \251 1993 by Nimble Computer Corporation)S
284 723 :M
(1)S
56 36 :M
f6_10 sf
(Thermodynamics and Garbage Collection)S
127 54 :M
f7_8 sf
(Henry G. Baker)S
102 72 :M
(Nimble Computer Corporation)S
71 80 :M
(16231 Meadow Ridge Way, Encino, CA 91436)S
86 88 :M
(\(818\) 501-4956\312\312\(818\) 986-1360 \(FAX\))S
35 95 -1 1 274 94 1 35 94 @a
37 103 :M
f0_8 sf
1.808 .181(We discuss the principles of statistical thermodynamics and their)J
37 111 :M
.739 .074(application to storage management problems. We point out problems)J
37 119 :M
1.694 .169(which result from imprecise usage of the terms )J
211 119 :M
f2_8 sf
(information)S
249 119 :M
f0_8 sf
.421 .042(, )J
f2_8 sf
.382(state)A
f0_8 sf
(,)S
37 127 :M
f2_8 sf
(reversible)S
69 127 :M
f0_8 sf
(, )S
f2_8 sf
(conservative)S
f0_8 sf
(, etc.)S
35 131 -1 1 274 130 1 35 130 @a
37 140 :M
f7_8 sf
(A.\312\312INTRODUCTION)S
37 150 :M
f0_8 sf
1.417 .142(Computer scientists should have a knowledge of abstract statistical)J
37 158 :M
.15 .015(thermodynamics. First, computer systems are )J
f2_8 sf
.044(dynamical)A
222 158 :M
f0_8 sf
.194 .019( systems, much)J
37 166 :M
1.352 .135(like physical systems, and therefore an important first step in their)J
37 174 :M
.186 .019(characterization is in finding properties and parameters that are )J
f2_8 sf
.055(constant)A
37 182 :M
f0_8 sf
.058 .006(over time \(i.e., )J
f2_8 sf
.092 .009(constants of motion)J
149 182 :M
f0_8 sf
.065 .006(\). Second, statistical thermodynamics)J
37 190 :M
.084 .008(successfully reduces )J
105 190 :M
f2_8 sf
(macroscopic)S
146 190 :M
f0_8 sf
.103 .01( properties of a system to the statistical)J
37 198 :M
1.157 .116(behavior of large numbers of )J
f2_8 sf
.343(microscopic)A
f0_8 sf
1.22 .122( processes. As computer)J
37 206 :M
.191 .019(systems become large assemblages of small components, an explanation)J
37 214 :M
.906 .091(of their macroscopic behavior may also be obtained as the aggregate)J
37 222 :M
.725 .073(statistical behavior of its component parts. If not, the elegance of the)J
37 230 :M
.229 .023(statistical thermodynamical approach can at least provide inspiration for)J
37 240 :M
.029 .003(new classes of models.)J
0 -3 rm
(1)S
0 3 rm
.025 .003( Third, the components of computer systems are)J
37 248 :M
1.171 .117(approaching the same size as the microscopic processes of physical)J
37 256 :M
.914 .091(statistical thermodynamics, and thus a knowledge of these issues can)J
37 264 :M
.19 .019(help in designing computers which better match the capabilities of these)J
37 272 :M
(microscopic processes\321e.g., reduce heat dissipation.)S
37 283 :M
f7_8 sf
(B.\312\312MACROSCOPIC AND MICROSCOPIC BEHAVIOR)S
37 293 :M
f0_8 sf
.44 .044(Physical thermodynamics since Maxwell has consisted of the reduction)J
37 301 :M
.209 .021(of )J
f2_8 sf
.128(macroscopic)A
88 301 :M
f0_8 sf
.917 .092( properties and processes to the statistical behavior of)J
37 309 :M
.38 .038(large numbers of )J
95 309 :M
f2_8 sf
.084(microscopic)A
f0_8 sf
.282 .028( processes. Since the detailed behavior of)J
37 317 :M
-.011(these microscopic processes is inaccessible, we are forced to consider the)A
37 325 :M
1.001 .1(aggregate behavior of large numbers of these microscopic processes.)J
37 333 :M
.946 .095(Under suitable conditions, the averaging effects and the central limit)J
37 341 :M
.466 .047(theorem allow nearly certain predictions of macroscopic properties and)J
37 349 :M
(processes which are independent of the microscopic details.)S
37 359 :M
.455 .046(Computer systems have become so large and complex that the study of)J
37 367 :M
1.318 .132(the detailed behavior of "microscopic" processes may no longer be)J
37 375 :M
.835 .083(fruitful, both because this detailed behavior may be inaccessible, and)J
37 383 :M
.8 .08(because averaging effects may make this detailed behavior irrelevant.)J
37 391 :M
1.537 .154(The management of storage in a modern object-oriented system is)J
37 399 :M
.244 .024(suitable for such aggregation because the number of objects can be very)J
37 407 :M
.1 .01(large, and the microscopic details may be inaccessible\321especially in the)J
37 415 :M
(face of massive parallelism and microscopic transaction resolution.)S
37 425 :M
.83 .083(Since statistical thermodynamics is the prediction of the )J
230 425 :M
f2_8 sf
.125(aggregate)A
f0_8 sf
.25 .025( or)J
37 433 :M
f2_8 sf
(macroscopic)S
78 433 :M
f0_8 sf
-.005( behavior from the statistics of the )A
f2_8 sf
-.006(microscopic)A
f0_8 sf
-.006( behavior, we)A
37 441 :M
1.012 .101(must first characterize what we mean by these terms. We assume a)J
37 449 :M
f2_8 sf
(classical)S
65 449 :M
f0_8 sf
.044 .004( \()J
f2_8 sf
.039(deterministic)A
112 449 :M
f0_8 sf
.354 .035(\) model of physics in which a system can have a)J
37 457 :M
.226 .023(well-defined state, and from this state and a state-transition function, we)J
37 465 :M
.386 .039(can completely predict all future states of the system. Such a complete)J
37 473 :M
1.721 .172(state we will call a )J
111 473 :M
f2_8 sf
.432(microstate)A
f0_8 sf
.985 .099(, since it has )J
196 473 :M
f2_8 sf
.297(all)A
f0_8 sf
1.321 .132( of the information)J
37 481 :M
.745 .074(necessary to completely predict not just the macroscopic, but also the)J
37 489 :M
.349 .035(microscopic, behavior of the system. The contents of a microstate may)J
37 497 :M
.319 .032(sometimes be factored into descriptions of individual subsystems called)J
37 505 :M
f2_8 sf
(particles)S
65 505 :M
f0_8 sf
.84 .084(. Each independent parameter in microstate may be called a)J
37 513 :M
f2_8 sf
(degree of freedom)S
f0_8 sf
(, or a mathematical )S
159 513 :M
f2_8 sf
(dimension)S
f0_8 sf
.007 .001(. The number of degrees)J
37 521 :M
.646 .065(of freedom, or dimensions, in the description of a typical macroscopic)J
37 531 :M
(system is of the order of Avagadro's number\321around 10)S
f0_7 sf
0 -3 rm
(23)S
0 3 rm
f0_8 sf
(.)S
0 -3 rm
(2)S
0 3 rm
37 541 :M
.359 .036(A )J
f2_8 sf
.219(macrostate)A
83 541 :M
f0_8 sf
1.598 .16( is the mathematical )J
159 541 :M
f2_8 sf
.303(projection)A
f0_8 sf
1.075 .108( of a microstate which)J
37 549 :M
1.337 .134(ignores a huge amount of information\321e.g., it projects Avagadro's)J
37 557 :M
.725 .072(number of dimensions onto a handful of macroscopic dimensions like)J
37 565 :M
.783 .078(temperature, pressure, etc. That a projection which throws away this)J
-4127 -4126 -1 1 -4125 -4126 1 -4127 -4127 @a
37 578.24 -.24 .24 180.24 578 .24 37 578 @a
37 592 :M
f0_9 sf
(1)S
42 595 :M
f2_8 sf
(Economists)S
79 595 :M
f0_8 sf
1.956 .196( also attempt to explain macroscopic behavior as the)J
37 603 :M
1.156 .116(statistical averaging of microscopic behavior. Some have looked at)J
37 611 :M
(economics-like models for computer systems [Huberman88].)S
37 621 :M
f2_8 sf
1.949 .195(Simulated annealing)J
f0_8 sf
1.32 .132( [Kirkpatrick83] is a probabilistic optimization)J
37 629 :M
.038 .004(technique suggested by physical thermodynamics which utilizes much of)J
37 637 :M
(the terminology used here, but for a different purpose.)S
37 648 :M
f0_9 sf
(2)S
42 651 :M
f0_8 sf
2.635 .263(Computer systems need an Avagadro-like number to indicate)J
37 659 :M
.118 .012(macroscopic behavior. )J
f2_8 sf
.164 .016(Bell's number)J
159 659 :M
f0_8 sf
.155 .016( \(after Gordon Bell\) for the current)J
37 668 :M
.056 .006(generation of computer systems would be about 2)J
f0_7 sf
0 -3 rm
(32)S
0 3 rm
f0_8 sf
.017A
221 665 :M
f0_7 sf
(9.6)S
230 668 :M
f0_8 sf
.073 .007(, since this is)J
37 676 :M
.145 .015(about the upper limit of the size of computer main memories today. The)J
37 684 :M
.481 .048(lower limit of Bell's number should be the number of gates on a single)J
37 693 :M
(chip\321currently about 2)S
f0_7 sf
0 -3 rm
(22)S
0 3 rm
f0_8 sf
S
137 690 :M
f0_7 sf
(6.6)S
146 693 :M
f0_8 sf
(.)S
282 31 :M
.57 .057(much information can still be useful to predict aggregate behavior is a)J
282 39 :M
.388 .039(triumph of thermodynamics\321i.e., it has )J
416 39 :M
f2_8 sf
.056(homomorphic)A
f0_8 sf
.212 .021( properties which)J
282 47 :M
1.806 .181(allow the projected numbers from one microstate to be useful in)J
282 55 :M
(predicting the projected numbers from a future microstate.)S
282 65 :M
.755 .075(A macrostate\321being a projection\321is the image of a large number of)J
282 73 :M
1.008 .101(microstates\321i.e., there are many microstates consistent with a given)J
282 81 :M
.047 .005(macrostate. Such a situation is common in computer language compilers)J
282 89 :M
.19 .019(wherein the set of "live" registers must be computed for every point in a)J
282 97 :M
1.31 .131(program [Aho86]. Due to the uncertainty associated with program)J
282 105 :M
.517 .052(branching, the compiler can compute only approximations to the set of)J
282 113 :M
.007 .001(live registers by computing a limit in a lattice. These lattice elements are)J
282 121 :M
.593 .059(macrostates, while the detailed actions of the instructions in a running)J
282 129 :M
(program are the microstates.)S
282 139 :M
.743 .074(The projections involved in storage management algorithms are clear.)J
282 147 :M
.446 .045(The designer of a storage manager does not and can not have access to)J
282 155 :M
1.726 .173(the detailed behavior of application programs which call upon its)J
282 163 :M
.79 .079(services, but must characterize that behavior using a small number of)J
282 171 :M
.931 .093(parameters. The designer of the storage manager would then like to)J
282 179 :M
.319 .032(predict future aggregate behavior of the system from a small number of)J
282 187 :M
-.004(macroscopic parameters which characterize the application. Some useful)A
282 195 :M
.835 .083(parameters might be the mean object size, the mean object allocation)J
282 203 :M
1.009 .101(rate, the mean object deallocation rate, the mean object lifetime, the)J
282 211 :M
(distribution of object sizes or lifetimes, etc.)S
282 221 :M
2.211 .221(There may be difficulties in defining a consistent microstate or)J
282 229 :M
1.233 .123(macrostate in the case of a distributed system, because such a state)J
282 237 :M
.127 .013(implies the notion of a consistent global time at which such a distributed)J
282 245 :M
(state can be measured. We will ignore these difficulties at present.)S
282 256 :M
f7_8 sf
(C.\312\312PROBABILITY AND KNOWLEDGE)S
282 266 :M
f0_8 sf
.023 .002(To perform macroscopic averaging of a large number of microstates, one)J
282 274 :M
(must )S
300 274 :M
f2_8 sf
(count)S
f0_8 sf
( and )S
333 274 :M
f2_8 sf
.031 .003(weight )J
f0_8 sf
.027 .003(the microstates. Counting the states is not usually)J
282 282 :M
.669 .067(controversial, because a well-defined computer system will have well)J
515 282 :M
(-)S
282 290 :M
.433 .043(defined microstates which are clearly distinguishable and countable. A)J
282 298 :M
.974 .097(more difficult problem is weighting the microstates in terms of their)J
282 306 :M
.531 .053(likelihood. The most difficult task in decomposing a system is to find)J
282 314 :M
f2_8 sf
-.005(independent)A
f0_8 sf
-.004( subsystems, so that the global properties can be computed as)A
282 322 :M
1.874 .187(a sum or product of local properties. If these systems are truly)J
282 330 :M
2.296 .23(independent, then we can feel comfortable about countings and)J
282 338 :M
2.083 .208(weightings which are multiplicative, and this condition is called)J
282 346 :M
f2_8 sf
2.676 .268(statistical independence)J
f0_8 sf
1.415 .141(. Furthermore, if each of the independent)J
282 354 :M
-.01(subsystems is sufficiently simple that all of its microstates appear equally)A
282 362 :M
(likely, then we can readily extend a weighting to the entire system.)S
282 372 :M
2.056 .206(The dependence of the state weighting process on an observer's)J
282 380 :M
-.008(knowledge is unavoidable. An observer of a classical \(i.e., deterministic\))A
282 388 :M
.316 .032(system having complete knowledge of the initial microstate will always)J
282 396 :M
.651 .065(know exactly which microstate the system is in at every moment, and)J
282 404 :M
.709 .071(will therefore assign a non-zero weighting to only one state at a time.)J
282 412 :M
.178 .018(However, even if the initial microstate is not known, an enthusiastic and)J
282 420 :M
.842 .084(persistent observer can perform calculations which exhaustively trace)J
282 428 :M
1.386 .139(every microstate consistent with the initial macrostate, and thereby)J
282 436 :M
1.216 .122(produce more accurate predictions. If the observer of an aggregate)J
282 444 :M
1.549 .155(model does not take complete advantage of all of the information)J
282 452 :M
.599 .06(provided in the initial macrostate, and does not track this information,)J
282 460 :M
1.642 .164(then this observer will continually lose information as the system)J
282 468 :M
1.843 .184(evolves. E.g., some applications perform "interval arithmetic" to)J
282 476 :M
.855 .086(compute numerical bounds on an answer, given bounds on the initial)J
282 484 :M
.27 .027(input. Unfortunately, these bounds are often very pessimistic due to the)J
282 492 :M
.225 .023(loss of information during the course of the computation\321e.g., if )J
497 492 :M
f2_8 sf
(x)S
501 492 :M
f0_8 sf
.296 .03( is in)J
282 500 :M
.979 .098([1,3], )J
f2_8 sf
(x)S
307 500 :M
f0_8 sf
(-)S
310 500 :M
f2_8 sf
.546(x)A
f0_8 sf
1.276 .128( is in [1,3]\312)J
354 500 :M
(-\312[1,3]\312=\312[1-3,3)S
402 500 :M
.925 .092(-1]\312=\312[-2,2], which is considerably)J
282 508 :M
.69 .069(worse than the precise bounds [0,0]. I.e., interval arithmetic does not)J
282 516 :M
(preserve all of the information presented in its input.)S
282 526 :M
-.003(Computer scientists are precise about the difference between )A
f2_8 sf
(reality)S
499 526 :M
f0_8 sf
( itself)S
282 534 :M
1.406 .141(and an observer's )J
346 534 :M
f2_8 sf
.319(knowledge)A
f0_8 sf
1.055 .106( of reality. However, many physicists')J
282 542 :M
.202 .02(descriptions of the removal of a partition separating two different gasses)J
282 550 :M
1.023 .102(equate the reality of the mixing of the gases to the ignorance of the)J
282 558 :M
.462 .046(observer about the mixed state of the gases. One must believe that the)J
282 566 :M
.317 .032(physical equilibrium achieved is not )J
403 566 :M
f2_8 sf
.28 .028(caused )J
f0_8 sf
.306 .031(by the observer's ignorance)J
282 574 :M
.384 .038(produced by the partition's removal. This confusion is compounded by)J
282 582 :M
.275 .028(the fact that the calculations from both points of view produce the same)J
282 590 :M
1.62 .162(numerical answer! \([Jaynes88] discusses this "maximum entropy")J
282 598 :M
(formulation of ignorance.\))S
282 609 :M
f7_8 sf
(D.\312\312ENTROPY AND INFORMATION)S
282 619 :M
f0_8 sf
1.809 .181(We define the )J
337 619 :M
f2_8 sf
3.106 .311(phase space)J
f0_8 sf
1.529 .153( for a system to be the state space of)J
282 627 :M
.075 .007(microstates\321i.e., each microstate is a single point in phase space. Since)J
282 635 :M
.154 .015(a )J
f2_8 sf
.17(macro)A
309 635 :M
f0_8 sf
.502 .05(state is a projection of a number of different )J
f2_8 sf
.225(micro)A
478 635 :M
f0_8 sf
.394 .039(states, there)J
282 643 :M
.394 .039(are a number of points in phase space associated with each macrostate.)J
282 651 :M
.042 .004(The number \(or total weight\) of the points in phase space associated with)J
282 659 :M
(a macrostate is the )S
f2_8 sf
(volume)S
f0_8 sf
( )S
f2_8 sf
(W)S
375 659 :M
f0_8 sf
( of the macrostate.)S
282 669 :M
.93 .093(If we have two )J
337 669 :M
f2_8 sf
.103(independent)A
f0_8 sf
.488 .049( subsystems characterized by macrostates,)J
282 677 :M
.335 .034(then the volume of the total system is the )J
420 677 :M
f2_8 sf
(product)S
445 677 :M
f0_8 sf
.347 .035( of the volumes of the)J
282 685 :M
.132 .013(macrostates of the independent subsystems. A multiplicative property is)J
282 693 :M
.19 .019(not as useful as an additive property, so we define a new property which)J
endp
%%Page: 2 2
%%BeginPageSetup
initializepage
(Henry Baker; page: 2 of 6)setjob
%%EndPageSetup
-31 -31 :T
gS 31 31 552 730 rC
68 47 :M
f0_12 sf
(ACM )S
f2_12 sf
(Sigplan Notices)S
174 47 :M
f0_12 sf
( )S
f4_12 sf
(29)S
f0_12 sf
(,4 \(April 1994\), 58-63.)S
68 754 :M
f0_8 sf
(Copyright \251 1993 by Nimble Computer Corporation)S
315 754 :M
(2)S
68 62 :M
.151 .015(is the )J
88 62 :M
f2_8 sf
.036(logarithm)A
f0_8 sf
.1 .01( of the phase space volume. This property is the )J
f2_8 sf
.042(entropy)A
68 70 :M
f0_8 sf
(of the macrostate, and is )S
148 70 :M
f2_8 sf
(defined)S
172 70 :M
f0_8 sf
( by Boltzmann's equation:)S
95 80 :M
f2_8 sf
(Entropy)S
121 80 :M
f0_8 sf
S
f2_8 sf
(k)S
133 80 :M
f0_8 sf
( log )S
f2_8 sf
(Volume)S
f0_8 sf
(, or more succinctly, )S
239 80 :M
f2_8 sf
(S)S
f0_8 sf
S
252 80 :M
f2_8 sf
(k)S
f0_8 sf
S
f2_8 sf
(W)S
133 88 :M
f0_8 sf
( where )S
157 88 :M
f2_8 sf
(k)S
f0_8 sf
( is Boltzmann's constant)S
68 98 :M
(As )S
79 98 :M
f2_8 sf
(k)S
f0_8 sf
.011 .001( is positive, entropy is monotonically related to the volume, which is)J
68 106 :M
(a measure of the "uncertainty" of the microstate.)S
68 116 :M
.119 .012(We define entropy in terms of the )J
f2_8 sf
.043(volume)A
f0_8 sf
.122 .012( of phase space, rather than the)J
68 124 :M
f2_8 sf
(probability)S
104 124 :M
f0_8 sf
.91 .091( of a macrostate. The definitions are equivalent, since the)J
68 132 :M
2.458 .246(probability )J
f2_8 sf
.583(p)A
f0_8 sf
.62A
125 132 :M
f2_8 sf
(W/W)S
f2_7 sf
0 2 rm
(0)S
0 -2 rm
144 132 :M
f0_8 sf
4.098 .41(, where )J
f2_8 sf
(W)S
191 134 :M
f2_7 sf
(0)S
195 132 :M
f0_8 sf
4.953 .495( is a constant, and thus)J
68 141 :M
f2_8 sf
(S)S
f0_8 sf
S
81 141 :M
f2_8 sf
(k)S
f0_8 sf
S
f2_8 sf
(W/W)S
114 143 :M
f2_7 sf
(0)S
118 141 :M
f0_8 sf
S
127 141 :M
f2_8 sf
(k)S
f0_8 sf
S
f2_8 sf
(W)S
151 141 :M
f0_8 sf
S
158 141 :M
f2_8 sf
(k)S
f0_8 sf
S
f2_8 sf
(W)S
182 143 :M
f2_7 sf
(0)S
186 141 :M
f0_8 sf
.472 .047(. I.e., the definitions differ only by)J
68 150 :M
.337 .034(an additive constant. Since we are interested in entropy )J
254 150 :M
f2_8 sf
.041(changes)A
f0_8 sf
.145 .015(, rather)J
68 158 :M
(than in )S
92 158 :M
f2_8 sf
(absolute)S
f0_8 sf
( entropy, this additive constant will not be important.)S
68 168 :M
1.93 .193(Shannon defines )J
130 168 :M
f2_8 sf
(information)S
168 168 :M
f0_8 sf
2.067 .207( as the reduction of uncertainty, i.e.,)J
68 176 :M
.554 .055(information is the )J
f2_8 sf
.177(reduction)A
162 176 :M
f0_8 sf
.782 .078( of entropy\321and measures information in)J
68 184 :M
f2_8 sf
(bits)S
80 184 :M
f0_8 sf
1.082 .108( rather than in units of Boltzmann's constant. Thus, a change in)J
68 192 :M
.657 .066(entropy/information of 1 bit corresponds to a change in the volume of)J
68 200 :M
1.754 .175(phase space of a factor of 2\321i.e., a doubling/halving of volume.)J
68 208 :M
-.009(Information and entropy are the same physical phenomenon. Entropy, as)A
68 216 :M
.703 .07(a measure of the uncertainty volume in phase space, is the amount of)J
68 224 :M
.694 .069(additional information that would have to be added to a macrostate to)J
68 232 :M
.895 .089(completely define a microstate. Thus, information is the negative of)J
68 240 :M
.725 .073(entropy, so that as information goes up, entropy goes down. We will)J
68 248 :M
(also measure entropy in )S
f2_8 sf
(bits)S
158 248 :M
f0_8 sf
(.)S
68 258 :M
.471 .047(Boltzmann's constant )J
f2_8 sf
(k)S
144 258 :M
f0_8 sf
.606 .061( converts units of entropy into units compatible)J
68 266 :M
.695 .07(with energy and temperature. Temperature, however, is defined more)J
68 274 :M
.113 .011(naturally in terms of energy rather than an )J
f2_8 sf
.148 .015(ad hoc)J
228 274 :M
f0_8 sf
.104 .01( temperature scale, and)J
68 282 :M
1.041 .104(in computer systems, "energy" will often be an abstract quantity not)J
68 290 :M
(related to physical energy.)S
68 300 :M
(Thermo)S
f2_8 sf
(dynamics)S
124 300 :M
f0_8 sf
.675 .067( has an implicit notion of a mixing/ergodic "motion";)J
68 308 :M
.571 .057(however, entropy and information can have static definitions. A static)J
68 316 :M
1.687 .169(configuration can thus have information and entropy, without any)J
68 324 :M
1.322 .132(dynamism. Thus, the concept of information/entropy belongs more)J
68 332 :M
1.854 .185(properly to thermo)J
f2_8 sf
.329(statistics)A
f0_8 sf
1.65 .165(, which eliminates the requirement for)J
68 340 :M
.427 .043(motion\321e.g., in computer science, the notion of the information stored)J
68 348 :M
(data is useful even when the data is static.)S
68 359 :M
f7_8 sf
(E.\312\312LIOUVILLE'S THEOREM FOR REVERSIBLE SYSTEMS)S
68 369 :M
f0_8 sf
-.009(In classical particle mechanics, the differential equations are reversible in)A
68 377 :M
.074 .007(the time variable. Thus, if the momentum of every particle is reversed at)J
68 385 :M
.241 .024(a particular point in time, the system will evolve backwards to its initial)J
68 393 :M
.66 .066(state. In other words, a classical mechanical system is reversible, and)J
68 401 :M
(hence it conserves information at every point in time.)S
68 411 :M
1.105 .11(Liouville's theorem discusses reversibility and phase space volumes.)J
68 419 :M
.196 .02(Classical mechanics tells us that the evolution of a single microstate is a)J
68 427 :M
1.414 .141(single thread which does not branch when going either forward or)J
68 435 :M
.066 .007(backward in time. Liouville's theorem tells us that the size of a set\321i.e.,)J
68 443 :M
1.054 .105(volume\321of such microstates in phase space does not change during)J
68 451 :M
-.014(system evolution. If such a volume change were to take place, then some)A
68 459 :M
.023 .002(threads would have to merge, or some threads would have to split. Since)J
68 467 :M
1.341 .134(such splits and merges violate micro-reversibility, the volume must)J
68 475 :M
(therefore remain constant.)S
68 485 :M
2.54 .254(Since distinct volumes of microstates are associated with each)J
68 493 :M
1.106 .111(macrostate, Liouville's theorem tells us that the volume of an initial)J
68 501 :M
.642 .064(macrostate does not change during the micro-reversible evolution of a)J
68 509 :M
1.337 .134(system. However, there is no requirement that this volume remain)J
68 517 :M
.986 .099(compact or connected during its evolution, so the description of this)J
68 525 :M
.457 .046(volume may become very complex. In fact, the shortest description of)J
68 533 :M
.49 .049(this volume might well be "the result of the time evolution of a certain)J
68 541 :M
.524 .052(micro-reversible system from a particular initial macrostate"\321e.g., the)J
68 549 :M
2.768 .277(micro-reversible system might be a reversible Turing machine)J
68 557 :M
.369 .037(diagonalizing all smaller Turing machines. Liouville's Theorem is thus)J
68 565 :M
.406 .041(summarized by the assertion "phase space is incompressible", since the)J
68 573 :M
("density" of microstates in phase space cannot change over time.)S
68 583 :M
.282 .028(\(It is not known if quantum physics is truly microreversible [Cramer86])J
68 591 :M
.328 .033(or not [Penrose89]. However, even if it is not, it must still preserve the)J
68 599 :M
f2_8 sf
.05(amount)A
f0_8 sf
.157 .016( of information, if not its content, and hence information creation)J
68 607 :M
.655 .066(must be strongly coupled with information destruction and vice versa.)J
68 615 :M
-.006(I.e., Liouville's theorem must hold in the weaker sense that the volume of)A
68 623 :M
.604 .06(phase space remains constant. Quantum cryptography is based on the)J
68 631 :M
.182 .018(inability to extract )J
130 631 :M
f2_8 sf
.04(all)A
f0_8 sf
.178 .018( of the information stored in a photon [Bennett92],)J
68 639 :M
3.086 .309(since any measurement "collapses the wave function". This)J
68 647 :M
.421 .042(simultaneous production of knowledge and ignorance may demonstrate)J
68 655 :M
.461 .046(the constancy of the universe's )J
172 655 :M
f2_8 sf
.117(amount)A
f0_8 sf
.37 .037( of information, if not constancy)J
68 663 :M
(of the information itself.\))S
68 674 :M
f7_8 sf
(F.\312\312MICRO- V. MACRO-REVERSIBLE SYSTEMS)S
68 684 :M
f0_8 sf
1.242 .124(A source of confusion in physical thermodynamics results from the)J
68 692 :M
1.533 .153(improper use of the terms )J
164 692 :M
f2_8 sf
.222(state)A
f0_8 sf
.457 .046( and )J
f2_8 sf
.261(reversible)A
231 692 :M
f0_8 sf
1.356 .136(. The term )J
f2_8 sf
.574(state)A
f0_8 sf
1.303 .13( in)J
68 700 :M
.309 .031(thermodynamics usually refers to a )J
f2_8 sf
.094(macro)A
f0_8 sf
.268 .027(-state, and thus it represents a)J
68 708 :M
1.158 .116(large volume of microstates\321i.e., it does )J
214 708 :M
f2_8 sf
.328(not)A
f0_8 sf
1.116 .112( pin down the specific)J
68 716 :M
.47 .047("state" \(i.e., )J
f2_8 sf
.194(micro)A
129 716 :M
f0_8 sf
.736 .074(-state\) of the system in the computer science sense.)J
68 724 :M
.271 .027(Physical thermodynamics uses the term )J
199 724 :M
f2_8 sf
(reversible)S
231 724 :M
f0_8 sf
.309 .031( to apply to processes)J
313 62 :M
.08 .008(which return a system to its initial )J
425 62 :M
f2_8 sf
.02(macro)A
f0_8 sf
.048 .005(-state, not its initial )J
f2_8 sf
.022(micro)A
528 62 :M
f0_8 sf
(-state.)S
313 70 :M
.158 .016(Macro-reversibility is considerably weaker than the Liouville concept of)J
313 78 :M
.669 .067(micro-reversibility; micro-reversibility implies macro-reversibility, but)J
313 86 :M
(the converse does not hold.)S
313 96 :M
.492 .049(Carnot heat engines are described as \(macro\) "reversible" processes, in)J
313 104 :M
2.364 .236(which heating, compression, decompression, etc., are performed)J
313 112 :M
.6 .06(sufficiently slowly that the system is "in equilibrium" at all times, and)J
313 120 :M
1.758 .176(the process is therefore "reversible". However, a simple thought)J
313 128 :M
.621 .062(experiment reveals that the Carnot heat engine is not micro-reversible.)J
313 136 :M
2.177 .218(Consider a matching pair of adiabatic \(insulated\) expansion and)J
313 144 :M
1.89 .189(compression strokes. Any real expansion consists of a series of)J
313 152 :M
2.313 .231(molecular impacts of varying times and impulses, and any real)J
313 160 :M
1.167 .117(compression consists of another series of molecular impacts. For a)J
313 168 :M
.877 .088(micro-reversible process, not only do the initial and final microstates)J
313 176 :M
.607 .061(have to be identical, but the timings and sizes of the impulses have to)J
313 184 :M
.16 .016(exactly match. Arranging for such matches is impossible in a traditional)J
313 192 :M
(macroscopic process.)S
313 202 :M
1.167 .117(In physical thermodynamics, macro-reversibility is equivalent to the)J
313 210 :M
-.002("conservation of entropy", which in turn is equivalent to the conservation)A
313 218 :M
-.002(of volume in phase space. However, )A
f2_8 sf
(macro)S
f0_8 sf
-.002(-reversibility does not require)A
313 226 :M
1.482 .148(that these successive equal volumes be related by micro-reversible)J
313 234 :M
1.734 .173(system evolution\321only that their volumes be equal. I.e., macro)J
545 234 :M
(-)S
313 242 :M
.084 .008(reversibility does not forbid the splitting or merging of individual micro)J
545 242 :M
(-)S
313 250 :M
1.755 .176(threads, but only that the aggregate effect of these splittings and)J
313 258 :M
.664 .066(mergings preserves the total volume. Thus, "conservation of entropy")J
313 266 :M
.194 .019(does )J
f2_8 sf
.06(not)A
f0_8 sf
.251 .025( imply "conservation of information", but only the conservation)J
313 274 :M
1.218 .122(of the volume of phase space\321i.e., "conservation of the )J
f2_8 sf
.392(amount)A
f0_8 sf
.708 .071( of)J
313 282 :M
-.008(entropy". Shannon's term "information" as a pseudonym for entropy thus)A
313 290 :M
.455 .045(fails to convey the computer science meaning of "information" as "that)J
313 298 :M
(which is necessary to restore a previous microstate".)S
313 309 :M
f7_8 sf
(G.\312\312REVERSIBLE V. IRREVERSIBLE SYSTEMS)S
313 319 :M
f0_8 sf
4.246 .425(We have discussed )J
396 319 :M
f2_8 sf
4.16 .416(micro- )J
426 319 :M
f0_8 sf
.856 .086(and )J
f2_8 sf
.303(macro-reversibility)A
508 319 :M
f0_8 sf
4.75 .475(, but not)J
313 327 :M
f2_8 sf
(irreversibility)S
357 327 :M
f0_8 sf
.64 .064(. An )J
f2_8 sf
.403(irreversible)A
f0_8 sf
1.554 .155( system is one for which Liouville's)J
313 335 :M
1.842 .184(Theorem does not hold\321i.e., information is not conserved but is)J
313 343 :M
f2_8 sf
.109(dissipated)A
f0_8 sf
.43 .043(. Thus, in the phrase "dissipative system" [Prigogine84], the)J
313 351 :M
1.643 .164(term "dissipative" does not refer to energy, but the dissipation of)J
313 359 :M
1.807 .181(information. Such systems usually lose energy as well, but it is)J
313 367 :M
1.001 .1(information dissipation which provides the behavior characteristic of)J
313 375 :M
(irreversible systems\321e.g., "limit cycles", which )S
f2_8 sf
(forget)S
489 375 :M
f0_8 sf
( initial conditions.)S
313 385 :M
.835 .083(A physical system may actually be micro-reversible, but if we ignore)J
313 393 :M
1.674 .167(certain microscopic degrees of freedom, then the most convenient)J
313 401 :M
.419 .042(mathematical model becomes irreversible\321e.g., the decay of a neutron)J
313 409 :M
.675 .068(into a proton, an electron and a neutrino. Although this reaction is in)J
313 417 :M
2.145 .215(principle reversible, the reverse reaction requires a simultaneous)J
313 425 :M
.086 .009(3-particle collision\321a very rare event. The interaction of neutrinos with)J
313 433 :M
.296 .03(matter is so rare that the reverse reaction essentially never occurs. This)J
313 441 :M
1.898 .19(reaction illustrates the ability of a neutrino to carry off valuable)J
313 449 :M
f2_8 sf
(information)S
351 449 :M
f0_8 sf
(, without also carrying off very much mass or energy.)S
313 459 :M
.023 .002(The tremendous interest in "dissipative" systems, with their complex and)J
313 467 :M
.993 .099(chaotic behavior, is not an admission that micro-irreversible systems)J
313 475 :M
2.311 .231(exist, but only that macro-irreversible models may be excellent)J
313 483 :M
(mathematical models for all but the finest-grained approximations.)S
313 494 :M
f7_8 sf
(H.\312\312ENERGY AND KNAPSACKS)S
313 504 :M
f0_8 sf
.361 .036(The first law of thermodynamics states that "energy is conserved". But)J
313 512 :M
.175 .018(what is "energy"? In classical mechanics, energy is a quadratic function)J
313 520 :M
.486 .049(of the microstate which is a metric of the distance in phase space from)J
313 528 :M
.677 .068(the origin where there is no "activity". But energy is convertible to a)J
313 536 :M
.534 .053(number of different forms. Modern physics tells us that energy is that)J
313 544 :M
1.474 .147(parameter which is conjugate to time, which essentially makes the)J
313 552 :M
.846 .085(conservation of energy a tautology: "energy is that property which is)J
313 562 :M
-.009(conserved over time".)A
383 559 :M
(3)S
0 3 rm
-.014( Given this tautology, computer scientists are free)A
0 -3 rm
313 570 :M
.229 .023(to choose one of a number of abstract quantities that are conserved over)J
313 578 :M
.46 .046(time to use as the "energy" of a system. If we utilize a quantity which)J
313 586 :M
1.213 .121(can be attached to a particular object or location, then our physical)J
313 594 :M
(intuitions about energy will remain valid.)S
313 604 :M
.474 .047(The energy of a system can be distributed over its subsystems in many)J
313 612 :M
.328 .033(different ways. In classical mechanics, energy is infinitely divisible, so)J
313 620 :M
.149 .015(that this distribution can be performed in an infinite number of ways. In)J
313 628 :M
.72 .072(quantum mechanics \(and computer science\), "energy" is quantized, so)J
313 636 :M
.415 .042(the distribution of a finite energy can be performed in only a countable)J
313 644 :M
(number of ways.)S
313 654 :M
.603 .06(The total energy of a system is a "knapsack" of a fixed total size, into)J
313 662 :M
.188 .019(which we can put items of various energies, if the total of these energies)J
313 670 :M
.74 .074(remains equal to the size of the knapsack. The usual thermodynamic)J
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
313 683.24 -.24 .24 456.24 683 .24 313 683 @a
313 697 :M
f0_9 sf
(3)S
318 700 :M
f0_8 sf
.429 .043(The modern term )J
f2_8 sf
.149(energy)A
400 700 :M
f0_8 sf
.6 .06( is not nearly as poetic as the classical Latin)J
313 708 :M
.217 .022(term )J
330 708 :M
f2_8 sf
.22 .022(vis viva)J
f0_8 sf
.187 .019( \("living force"\). However, the neutral term )J
500 708 :M
f2_8 sf
(energy)S
522 708 :M
f0_8 sf
.225 .022( is more)J
313 716 :M
1.163 .116(accurate, since as we have seen, a mechanical system requires both)J
313 724 :M
(energy and information to achieve "vis viva".)S
endp
%%Page: 3 3
%%BeginPageSetup
initializepage
(Henry Baker; page: 3 of 6)setjob
%%EndPageSetup
-31 -31 :T
gS 31 31 552 730 rC
68 47 :M
f0_12 sf
(ACM )S
f2_12 sf
(Sigplan Notices)S
174 47 :M
f0_12 sf
( )S
f4_12 sf
(29)S
f0_12 sf
(,4 \(April 1994\), 58-63.)S
68 754 :M
f0_8 sf
(Copyright \251 1993 by Nimble Computer Corporation)S
315 754 :M
(3)S
68 62 :M
.676 .068(problems involve counting the number of different ways of filling the)J
68 70 :M
.172 .017(knapsack with these items of different energies. If a large portion of the)J
68 78 :M
.314 .031(knapsack is allocated to one or two items, then there will be little space)J
68 86 :M
.671 .067(\(energy\) left over for smaller items, and hence the number of ways of)J
68 94 :M
(filling the knapsack is small. Similarly, if a large portion of the knapsack)S
68 102 :M
.129 .013(is allocated to small indistinguishable items, then the number of ways of)J
68 110 :M
.882 .088(filling the knapsack are also limited. The largest number of ways of)J
68 118 :M
2.013 .201(filling the knapsack utilizes many distinguishable items of many)J
68 126 :M
(different sizes \(energies\).)S
68 136 :M
1.482 .148(If two items in the knapsack have the same size \(energy\), but are)J
68 144 :M
.157 .016(distinguishable, then we have )J
f2_8 sf
.047(degeneracy)A
203 144 :M
f0_8 sf
.135(.)A
f8_6 sf
.244 .024( )J
209 144 :M
f0_8 sf
.223 .022(\(this meaning is the opposite)J
68 152 :M
.171 .017(of what one might expect\). Without degeneracy, the only distinguishing)J
68 160 :M
.153 .015(feature of an item is its size \(energy\). In a very simple quantum system,)J
68 168 :M
.932 .093(the only possible items for our knapsack are integer multiples of the)J
68 176 :M
(basic quantum energy.)S
68 186 :M
.231 .023(Let us consider a simple system with a fixed energy and a fixed number)J
68 194 :M
.014 .001(of distinguishable items\321i.e., we have a fixed number of distinguishable)J
68 202 :M
.293 .029(slots, each of which holds exactly one item of any size \(energy\), but the)J
68 210 :M
.326 .033(sum of the sizes \(energies\) of the items equals the total size \(energy\) of)J
68 218 :M
1.296 .13(the knapsack. Since there are only two macroscopic numbers\321the)J
68 226 :M
.181 .018(number of slots and the total energy\321the macrostate is defined by these)J
68 234 :M
.034 .003(numbers. There are a large number of microstates meeting these criteria,)J
68 242 :M
.462 .046(however. The "most probable" distribution of energies is among all of)J
68 250 :M
.601 .06(those microstates which meet the macroscopic criteria is the Maxwell-)J
68 258 :M
1.99 .199(Boltzmann \(MB\) distribution, which Maxwell found by a simple)J
68 266 :M
2.342 .234(application of Lagrange multipliers and Stirling's approximation)J
68 274 :M
-.012([Reichenbach56]. In the MB distribution, the probability of a slot having)A
68 283 :M
.585 .058(an energy )J
f2_8 sf
(E)S
108 283 :M
f0_8 sf
.671 .067( is proportional to e)J
175 280 :M
f0_7 sf
<2DA7>S
181 280 :M
f2_7 sf
.392(E)A
f0_8 sf
0 3 rm
.703 .07(, where \247 is the )J
0 -3 rm
241 283 :M
f2_8 sf
.12(temperature)A
f0_8 sf
.266 .027( of the)J
68 291 :M
1.317 .132(distribution. In the MB distribution, most particles have small and)J
68 299 :M
.415 .041(similar energies, because there are a large number of ways to distribute)J
68 307 :M
.275 .027(energy among particles with similar energies. If there were )J
265 307 :M
f2_8 sf
.048(no)A
f0_8 sf
.182 .018( particles)J
68 315 :M
1.213 .121(of large energies, then the number of possibilities would be greatly)J
68 323 :M
.162 .016(reduced. The MB distribution, which allows a few large energies, offers)J
68 331 :M
(the best compromise.)S
68 341 :M
.294 .029(In the MB distribution, the probability for a higher energy slot is higher)J
68 349 :M
.337 .034(at "high" temperature than at "low" temperature. Furthermore, the total)J
68 357 :M
.013 .001(amount of energy stored in the distribution will be higher with a "higher")J
68 365 :M
.777 .078(temperature. Finally, an increased amount of energy leads to a wider)J
68 373 :M
(distribution of energies and hence an increased entropy capacity.)S
68 384 :M
f7_8 sf
(I.\312\312TEMPERATURE)S
68 394 :M
f0_8 sf
.957 .096(The modern abstract concept of )J
179 394 :M
f2_8 sf
.138(temperature)A
f0_8 sf
.551 .055( is substantially different)J
68 402 :M
2.769 .277(from our intuitive notions of what is )J
216 402 :M
f2_8 sf
.587(hot)A
f0_8 sf
2.188 .219(. Modern statistical)J
68 410 :M
.828 .083(thermodynamics defines temperature as a macroscopic parameter that)J
68 418 :M
2.161 .216(can be calculated from the derivative of two other macroscopic)J
68 426 :M
(parameters. Thus, if )S
136 426 :M
f2_8 sf
(T)S
f0_8 sf
( is temperature, )S
192 426 :M
f2_8 sf
(S)S
f0_8 sf
( is entropy, and )S
f2_8 sf
(E)S
252 426 :M
f0_8 sf
( is energy,)S
108 436 :M
(1)S
108 445 :M
f2_8 sf
(T)S
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
108 438.24 -.24 .24 112.24 438 .24 108 438 @a
112 441 :M
f0_8 sf
S
121 441 :M
f2_8 sf
(k)S
f0_8 sf
S
139 436 :M
f2_8 sf
(dS)S
139 445 :M
(dE)S
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
139 438.24 -.24 .24 148.24 438 .24 139 438 @a
148 441 :M
f0_8 sf
S
180 441 :M
f2_8 sf
(k)S
f0_8 sf
( is Boltzmann's constant.)S
68 455 :M
f2_8 sf
.329 .033(The inverse temperature is proportional to the change in entropy which)J
68 463 :M
.125 .013(results from the addition of one quantum of energy)J
f0_8 sf
.096 .01(. Since the entropy is)J
68 471 :M
.622 .062(itself proportional to the logarithm of the phase space volume, we can)J
68 479 :M
1.33 .133(also define the temperature in terms of changes in the phase space)J
68 487 :M
(volume which result from the addition of one quantum of energy.)S
135 497 :M
(1)S
135 506 :M
f2_8 sf
(T)S
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
135 499.24 -.24 .24 139.24 499 .24 135 499 @a
139 502 :M
f0_8 sf
S
148 502 :M
f2_8 sf
(k)S
f0_8 sf
S
166 497 :M
f2_8 sf
(dS)S
166 506 :M
(dE)S
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
166 499.24 -.24 .24 175.24 499 .24 166 499 @a
175 502 :M
f0_8 sf
S
184 497 :M
f2_8 sf
<64CA>S
f0_8 sf
(log)S
f2_8 sf
(W)S
191 506 :M
(dE)S
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
184 499.24 -.24 .24 207.24 499 .24 184 499 @a
207 502 :M
f0_8 sf
S
217 497 :M
(1)S
216 506 :M
f2_8 sf
(W)S
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
216 499.24 -.24 .24 223.24 499 .24 216 499 @a
223 502 :M
f0_8 sf
S
f2_8 sf
0 -5 rm
(dW)S
0 5 rm
226 506 :M
(dE)S
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
225 499.24 -.24 .24 236.24 499 .24 225 499 @a
68 516 :M
f0_8 sf
.073 .007(If the change in entropy \(uncertainty volume\) resulting from the addition)J
68 524 :M
-.004(of one energy quantum is small and positive, then the temperature is very)A
68 532 :M
.894 .089(high. If the entropy change resulting from the addition of an energy)J
68 540 :M
.716 .072(quantum is large and positive, then the temperature is very low. In a)J
68 548 :M
1.595 .159(classical system, the energy capacity \(number of energy levels\) is)J
68 556 :M
1.044 .104(infinite, and the entropy change with respect to an energy change is)J
68 564 :M
(always positive.)S
68 574 :M
.813 .081(It may happen, however, that the maximum energy that a system can)J
68 582 :M
.735 .074(hold is bounded, meaning that only a finite amount of energy may be)J
68 590 :M
.639 .064(invested in the system. Let us consider what happens when one starts)J
68 598 :M
1.136 .114(with such a system in a zero energy state and adds energy in equal)J
68 606 :M
.95 .095(increments. At first, the volume of phase space grows very quickly,)J
68 614 :M
.067 .007(which implies that the entropy also grows, although not as quickly, since)J
68 622 :M
.708 .071(it is the logarithm of the volume. A large growth in entropy for each)J
68 630 :M
1.617 .162(quantum of energy is typical of a )J
f2_8 sf
.902(low)A
206 630 :M
f0_8 sf
1.638 .164( temperature. However, as)J
68 638 :M
.883 .088(additional energy is added, the entropy grows more and more slowly)J
68 646 :M
.361 .036(with each new equal increment of energy. This situation is typical of a)J
68 654 :M
f2_8 sf
.043(high)A
f0_8 sf
.151 .015( temperature. Since the maximum energy of the system is bounded,)J
68 662 :M
.083 .008(however, the growth of the entropy usually reaches a plateau well before)J
68 670 :M
.468 .047(the maximum energy is reached. This situation is typical of an )J
280 670 :M
f2_8 sf
(infinite)S
68 678 :M
f0_8 sf
.692 .069(temperature. If we increase the energy beyond this point, the entropy)J
68 686 :M
.531 .053(may now start to )J
f2_8 sf
.194(fall)A
138 686 :M
f0_8 sf
.56 .056(! This is because the energy-carrying capacity of)J
68 694 :M
1.465 .146(the system is saturating, and there are fewer and fewer degrees of)J
68 702 :M
.379 .038(freedom in which to add energy. This situation is typical of a )J
f2_8 sf
.143(negative)A
68 710 :M
f0_8 sf
.055 .005(temperature, which is really a "hotter than infinite" temperature. Finally,)J
68 718 :M
1.069 .107(when the system reaches the maximum possible energy, the entropy)J
313 62 :M
.65 .065(often falls to zero, since there is often only one way for the system to)J
313 70 :M
(incorporate the maximum energy.)S
313 80 :M
.999 .1(Due to the discontinuity in the Kelvin absolute temperature )J
f2_8 sf
.348(T)A
f0_8 sf
1.122 .112( which)J
313 88 :M
.324 .032(results when the entropy reaches its maximum point, modern physicists)J
313 96 :M
.19 .019(have started using instead the )J
411 96 :M
f2_8 sf
.03(inverse)A
f0_8 sf
.139 .014( temperature \247=1/)J
f2_8 sf
.036(kT)A
f0_8 sf
.126 .013( \(with physical)J
313 104 :M
.123 .012(units of inverse energy\). Note that "absolute zero" means \247=+)J
cF
f1_8 sf
.012A
sf
.123 .012(, normal)J
313 112 :M
.508 .051(temperature means \247>0, infinite temperature means \247=0, and abnormal)J
313 120 :M
(\("hotter than hot"\) temperature means \247<0.)S
352 124 156 160 rC
-1 -1 368 267 1 1 367 126 @b
367 267 -1 1 507 266 1 367 266 @a
gR
gS 31 31 552 730 rC
gS
.642 .65 scale
558.506 299.888 :T
270 rotate
-558.506 -299.888 :T
526.506 302.888 :M
f7_12 sf
(Information)S
gR
352 124 156 160 rC
gS
.642 .65 scale
684.585 425.963 :T
-684.585 -425.963 :T
663.585 428.963 :M
f7_12 sf
(Energy)S
gR
180 270 139 234 437 266.5 @n
-90 0 139 234 437 266.5 @n
-1 -1 368 191 1 1 454 126 @b
391 127 -1 1 455 220 1 391 126 @a
gS
.642 .65 scale
635.757 210.713 :T
-635.757 -210.713 :T
627.757 213.713 :M
f7_12 sf
(A)S
gR
gS
.642 .65 scale
707.412 210.713 :T
-707.412 -210.713 :T
699.412 213.713 :M
f7_12 sf
(B)S
gR
gS
.642 .65 scale
683.719 380.688 :T
-683.719 -380.688 :T
599.719 376.688 :M
f7_12 sf
(Temperature T = - Slope A)S
gR
gS
.642 .65 scale
683.719 380.525 :T
-683.719 -380.525 :T
599.719 390.525 :M
f7_12 sf
(Temperature \247 = \(1/k\) Slope B)S
gR
gR
gS 31 31 552 730 rC
313 292 :M
f0_8 sf
.582 .058(To summarize, the )J
f2_8 sf
.161(temperature)A
f0_8 sf
.433 .043( of a system refers to the change in the)J
313 300 :M
.551 .055(system's information storage capacity that results from a change in the)J
313 308 :M
(system's total energy\321i.e., 1/)S
408 308 :M
f2_8 sf
(T)S
f0_8 sf
S
cF
f1_8 sf
S
sf
S
421 308 :M
f2_8 sf
(dInfo)S
f0_8 sf
(/)S
440 308 :M
f2_8 sf
(dEnergy)S
f0_8 sf
(.)S
313 319 :M
f7_8 sf
(J.\312\312HEAT)S
313 329 :M
f0_8 sf
.528 .053(In Laplace and Fourier's time, the )J
428 329 :M
f2_8 sf
.139(caloric)A
f0_8 sf
.453 .045( theory of heat was in vogue.)J
313 337 :M
.995 .1(In this theory, heat was a )J
404 337 :M
f2_8 sf
.219(fluid)A
f0_8 sf
.676 .068( which )J
445 337 :M
f2_8 sf
.21(flowed)A
f0_8 sf
.707 .071( from hotter bodies into)J
313 345 :M
.251 .025(colder ones, much like water flows from a higher level to a lower level.)J
313 353 :M
.845 .085(Terms like )J
f2_8 sf
1.402 .14(heat capacity)J
398 353 :M
f0_8 sf
.786 .079( and )J
f2_8 sf
2.075 .208(heat flow)J
449 353 :M
f0_8 sf
1.327 .133( stem from the concept of a)J
313 361 :M
(caloric fluid.)S
313 371 :M
-.001(With the development of the concept of energy, physicists knew that heat)A
313 379 :M
.317 .032(contained energy, but this was not the whole story, because heat energy)J
313 387 :M
.558 .056(at high temperatures was more valuable than the same quantity of heat)J
313 395 :M
.418 .042(energy at low temperatures, and mechanical "work" was more valuable)J
313 403 :M
1.856 .186(than any kind of heat energy. Clausius developed the notion of)J
313 411 :M
1.818 .182("entropy", which flowed in and out of bodies as well as energy.)J
313 419 :M
.956 .096(Boltzmann showed that this entropy was simply the logarithm of the)J
313 427 :M
1.727 .173(phase space volume; Hartley and Shannon related this entropy to)J
313 435 :M
.979 .098(information. )J
f2_8 sf
.394(Heat)A
377 435 :M
f0_8 sf
1.563 .156( flow thus involves the flow of )J
493 435 :M
f2_8 sf
.165(two)A
f0_8 sf
.837 .084( independent)J
313 443 :M
(things: energy )S
361 443 :M
f2_8 sf
(and)S
f0_8 sf
( information.)S
313 453 :M
.157 .016(The abstract concept of temperature refers to the ratio of the incremental)J
313 461 :M
.192 .019(change in information storage capacity which results from the change in)J
313 469 :M
.027 .003(the amount of energy stored. At a "high" temperature, more energy must)J
313 477 :M
.5 .05(be added to store the same number of bits than at a "low" temperature.)J
313 485 :M
.396 .04(Or, a "high temperature" source can dispense a unit of energy with less)J
313 493 :M
2.108 .211(information than can a low temperature source. Or, since your)J
313 501 :M
.667 .067(information is my noise, a "high temperature" source of energy is less)J
313 509 :M
(noisy than is a "low temperature" source.)S
313 520 :M
f7_8 sf
(K.\312\312CARNOT THEORY)S
313 530 :M
f0_8 sf
1.742 .174(Carnot invented thermodynamics to explain the properties of heat)J
313 538 :M
.646 .065(engines, and thus the meanings of the terms "heat" and "temperature".)J
313 546 :M
1.589 .159(Clausius then went on to quantify Carnot's model and express the)J
313 554 :M
.606 .061(maximum efficiency of a heat engine operating between a heat source)J
313 562 :M
.562 .056(and a heat sink in terms of the ratio of the absolute temperatures of its)J
313 570 :M
(source and sink.)S
313 580 :M
1.007 .101(Carnot's heat engine efficiency theory can be more simply explained)J
313 588 :M
.319 .032(utilizing Liouville's Theorem and the definition of temperature in terms)J
313 596 :M
-.004(of the volume of phase space and information. Consider two large "heat")A
313 604 :M
.192 .019(reservoirs at temperatures )J
399 604 :M
f2_8 sf
(T)S
0 2 rm
(H)S
0 -2 rm
409 604 :M
f0_8 sf
.221 .022( and )J
f2_8 sf
(T)S
430 606 :M
.082(L)A
f0_8 sf
0 -2 rm
.214 .021(, respectively. By the definition of)J
0 2 rm
313 613 :M
.4 .04(temperature, one can obtain a unit of energy from the high temperature)J
313 621 :M
.524 .052(reservoir only by also accepting an amount of information/noise 1/)J
535 621 :M
f2_8 sf
(T)S
0 2 rm
(H)S
0 -2 rm
545 621 :M
f0_8 sf
(.)S
313 630 :M
.827 .083(Similarly, one can exhaust one unit of information/noise into the low)J
313 638 :M
.262 .026(temperature reservoir only by also exhausting )J
f2_8 sf
(T)S
469 640 :M
.139(L)A
f0_8 sf
0 -2 rm
.307 .031( units of energy to this)J
0 2 rm
313 647 :M
.8 .08(reservoir. Thus, a complete cycle will accept one unit of energy and)J
313 655 :M
(1/)S
f2_8 sf
(T)S
324 657 :M
(H)S
330 655 :M
f0_8 sf
1.027 .103( units of information/noise from the high temperature reservoir,)J
313 664 :M
.215 .022(followed by the exhaustion of )J
f2_8 sf
(T)S
417 666 :M
(L)S
f0_8 sf
0 -2 rm
S
0 2 rm
433 664 :M
f2_8 sf
(T)S
0 2 rm
(H)S
0 -2 rm
443 664 :M
f0_8 sf
.23 .023(\) units of energy and 1/)J
f2_8 sf
(T)S
524 666 :M
(H)S
530 664 :M
f0_8 sf
.24 .024( units)J
313 673 :M
.627 .063(of information/noise to the low temperature reservoir. Since the same)J
313 681 :M
.237 .024(amount \(1/)J
f2_8 sf
(T)S
353 683 :M
(H)S
359 681 :M
f0_8 sf
.311 .031(\) of information/noise is both accepted and exhausted, the)J
313 690 :M
.442 .044(amount of information inside of the heat engine remains constant. The)J
313 698 :M
1.555 .156(excess energy 1-\()J
375 698 :M
f2_8 sf
(T)S
0 2 rm
(L)S
0 -2 rm
f0_8 sf
(/)S
f2_8 sf
(T)S
390 700 :M
(H)S
396 698 :M
f0_8 sf
1.678 .168(\) is now available as "work"\321i.e., energy)J
313 707 :M
.056 .006(without any information/noise. Thus, the efficiency in terms of the work)J
313 715 :M
3.051 .305(produced relative to the high-temperature energy absorbed is)J
endp
%%Page: 4 4
%%BeginPageSetup
initializepage
(Henry Baker; page: 4 of 6)setjob
%%EndPageSetup
-31 -31 :T
gS 31 31 552 730 rC
68 47 :M
f0_12 sf
(ACM )S
f2_12 sf
(Sigplan Notices)S
174 47 :M
f0_12 sf
( )S
f4_12 sf
(29)S
f0_12 sf
(,4 \(April 1994\), 58-63.)S
68 754 :M
f0_8 sf
(Copyright \251 1993 by Nimble Computer Corporation)S
315 754 :M
(4)S
68 62 :M
<28>S
71 62 :M
f2_8 sf
(T)S
0 2 rm
(H)S
0 -2 rm
81 62 :M
f0_8 sf
(-)S
84 62 :M
f2_8 sf
(T)S
0 2 rm
(L)S
0 -2 rm
f0_8 sf
(\)/)S
97 62 :M
f2_8 sf
(T)S
0 2 rm
(H)S
0 -2 rm
107 62 :M
f0_8 sf
S
cF
f1_8 sf
(D)S
sf
f2_8 sf
(T)S
125 62 :M
f0_8 sf
(/)S
f2_8 sf
(T)S
132 64 :M
(H)S
138 62 :M
f0_8 sf
.421 .042(. We do not require that )J
222 62 :M
f2_8 sf
(T)S
0 2 rm
(H)S
0 -2 rm
232 62 :M
f0_8 sf
(>)S
237 62 :M
f2_8 sf
.236(T)A
0 2 rm
.236(L)A
0 -2 rm
f0_8 sf
.197 .02(. If )J
f2_8 sf
.236(T)A
0 2 rm
(H)S
0 -2 rm
270 62 :M
f0_8 sf
(<)S
275 62 :M
f2_8 sf
.096(T)A
0 2 rm
.096(L)A
0 -2 rm
f0_8 sf
.255 .026(, then)J
68 71 :M
(the work is negative, and we have a refrigerator.)S
68 81 :M
.237 .024(We note that the information-carrying capacity of "work" is zero, so the)J
68 89 :M
.767 .077(incremental addition of energy does not change its entropy, hence the)J
68 97 :M
.058 .006("temperature" of "work" is infinite. This definition is consistent with the)J
68 105 :M
.538 .054(usual formulation of the Second Law which states that energy tends to)J
68 113 :M
.284 .028(flow from higher to lower temperature bodies\321e.g., one can heat a cup)J
68 121 :M
.537 .054(of coffee by stirring it \(a lot!\). \(The coffee will then )J
f2_8 sf
.229(remember)A
f0_8 sf
.744 .074( every)J
68 129 :M
(single collision of every single water molecule with the spoon.\))S
68 139 :M
.764 .076(The Carnot theory of heat engine efficiency follows directly from the)J
68 147 :M
f2_8 sf
(definition)S
99 147 :M
f0_8 sf
-.001( of temperature and micro-reversibility. Carnot himself utilized)A
68 155 :M
f2_8 sf
.124(macro)A
f0_8 sf
.43 .043(-reversibility rather than )J
171 155 :M
f2_8 sf
(micro)S
190 155 :M
f0_8 sf
.459 .046(-reversibility; the efficiency result)J
68 163 :M
.299 .03(still follows, but such an engine may or may not correspond to physical)J
68 171 :M
1.44 .144(reality. Carnot must then invoke Liouville's theorem to assure the)J
68 179 :M
(theoretical existence of reversible heat engines.)S
68 190 :M
f7_8 sf
(L.\312\312SYSTEMS CAN HAVE MULTIPLE TEMPERATURES)S
68 200 :M
f0_8 sf
-.008(The usual formulation of temperature implicitly assumes that a body is in)A
68 208 :M
1.905 .19("thermal equilibrium"\321i.e., every part of the body has the same)J
68 216 :M
.417 .042(temperature as every other part. The energy "equipartition theorem" is)J
68 224 :M
.103 .01(then a tautology\321every degree of freedom has the same average energy.)J
68 232 :M
.139 .014(Consider what would happen if the equipartition theorem did not hold\321)J
68 240 :M
.889 .089(i.e., one degree of freedom has less energy than another. But by the)J
68 248 :M
.291 .029(definition of "degree of freedom", each degree of freedom has the same)J
68 256 :M
.819 .082(information-carrying capacity as every other degree of freedom. The)J
68 264 :M
.271 .027(temperature for the degree of freedom with less energy would be lower,)J
68 272 :M
(violating the definition of equilibrium.)S
68 282 :M
-.007(The ability of energy and information to flow from one system to another)A
68 290 :M
.651 .065(depends upon their coupling. Without coupling, these systems cannot)J
68 298 :M
1.055 .106(exchange energy or information. With strong coupling, the systems)J
68 306 :M
.831 .083(exchange energy and information quite readily and presumably reach)J
68 314 :M
.145 .015(equilibrium very quickly. With weak coupling between the systems, the)J
68 322 :M
.506 .051(systems may eventually reach equilibrium, but it may take a very long)J
68 330 :M
(time.)S
68 340 :M
.275 .028(An example of weakly coupled systems is a computer CPU chip and its)J
68 348 :M
.146 .015(heat sink. The few degrees of freedom that are used for the computation)J
68 356 :M
1.323 .132(itself must be isolated quite well from the huge amount of random)J
68 364 :M
.087 .009(information which is constantly present in the heat sink. Unless the chip)J
68 372 :M
.217 .022(is very poorly designed, under normal circumstances the signal-carrying)J
68 380 :M
.195 .02(degrees of freedom of the wires and gates on the chip are )J
f2_8 sf
.096(not)A
267 380 :M
f0_8 sf
.203 .02( in thermal)J
68 388 :M
1.281 .128(equilibrium with their environment. The fact that these degrees of)J
68 396 :M
.531 .053(freedom do not carry their full complement of information/randomness)J
68 404 :M
.201 .02(means that the "effective" temperature of these wires and gates is nearly)J
68 412 :M
1.654 .165(infinite. This is because a lot of energy is being transferred, but)J
68 420 :M
(relatively little information.)S
68 430 :M
.715 .072(Another loosely coupled system is that of the quantum spin state of a)J
68 438 :M
.081 .008(number of nuclei in a magnetic field. After a reversal of the field, it may)J
68 446 :M
.053 .005(take some time for the nuclei to reestablish equilibrium, but in the mean-)J
68 454 :M
.46 .046(time, the "temperature" of these nuclei spins is hotter than infinite, i.e.,)J
68 462 :M
f2_8 sf
(negative)S
f0_8 sf
( [Marvan66].)S
68 473 :M
f7_8 sf
(M.\312\312INFORMATION IN A GARBAGE-COLLECTED HEAP)S
68 483 :M
f0_8 sf
.68 .068(To apply some of the concepts from statistical thermodynamics to the)J
68 491 :M
1.687 .169(analysis of an actual garbage-collected heap, we must first find a)J
68 499 :M
.107 .011(conserved quantity that will function as the "energy" of the system. One)J
68 507 :M
.092 .009(obvious quantity to choose is the total number of storage locations under)J
68 515 :M
.1 .01(management, since under normal circumstances \(i.e., the heap is not part)J
68 523 :M
.373 .037(of an application controlling a bomb\) such storage locations are neither)J
68 531 :M
.994 .099(created nor destroyed. A storage manager which acquires additional)J
68 539 :M
.287 .029(storage from the system \(e.g., through Unix ")J
f8_8 sf
.109(brk)A
f0_8 sf
.223 .022("\) can be handled in a)J
68 547 :M
.999 .1(manner analogous to a physical system which can acquire additional)J
68 555 :M
1.281 .128(energy. Another important quantity to be preserved by the storage)J
68 563 :M
1.481 .148(manager is the number and total storage requirement of the "live")J
68 571 :M
1.965 .197(objects\321otherwise, the storage manager would interfere with the)J
68 579 :M
(application.)S
68 589 :M
1.142 .114(Since a storage manager is not allowed to "look at" the bulk of the)J
68 597 :M
.396 .04(application information stored in "live" objects, we will not count these)J
68 605 :M
1.378 .138(bits as part of the storage manager information stored in the heap.)J
68 613 :M
1.199 .12(However, the sizes of the objects, their locations, and perhaps their)J
68 621 :M
.505 .05(pointers to other objects may be considered as information pertinent to)J
68 629 :M
.266 .027(the storage manager. Thus, the degrees of freedom under the control of)J
68 637 :M
1.36 .136(the storage manager are only )J
f2_8 sf
2.37 .237(loosely coupled)J
229 637 :M
f0_8 sf
1.857 .186( with the degrees of)J
68 645 :M
.541 .054(freedom under the control of the application, and may have a different)J
68 653 :M
("temperature".)S
68 663 :M
.088 .009(For example, in a Knuth-style storage manager [Knuth73] in which there)J
68 671 :M
.612 .061(are no pointers, the only relevant information is in the sizes, locations)J
68 679 :M
.133 .013(and live/free status of the storage blocks. In the case of a non-relocating)J
68 687 :M
.327 .033(Lisp cons cell garbage collector, the relevant information might include)J
68 695 :M
1.852 .185(pointer and list/atom information, but would not include location)J
68 703 :M
.781 .078(\(irrelevant\) and size \(constant\) information. In the case of a copying)J
68 711 :M
.6 .06(collector, size and pointer information would be relevant, and location)J
68 719 :M
.957 .096(information may or may not be relevant. The simplest situation is a)J
313 62 :M
.057 .006(storage manager having fixed-size blocks, no relocation, and no pointers;)J
313 70 :M
.314 .031(the information in such a system would include only the live/free status)J
313 78 :M
(bits for all the blocks.)S
313 88 :M
.087 .009(In a non-garbage-collected \(Knuth-style\) heap, the entropy of the heap is)J
313 96 :M
.004 0(primarily the fragmentation of the heap. In a garbage-collected heap, the)J
313 104 :M
.806 .081(entropy of the heap is associated with both fragmentation and loss of)J
313 112 :M
.296 .03(liveness information. In the case of a garbage-collected heap, however,)J
313 120 :M
.964 .096(one must be very careful about whose knowledge is being modelled,)J
313 128 :M
.338 .034(since the garbage collector can always presumably distinguish \(at some)J
313 136 :M
.533 .053(cost\) the live from the non-live objects. As always, the entropy of the)J
313 144 :M
.78 .078(heap is monotonically related to the volume of microstates which are)J
313 152 :M
1.348 .135(consistent with some macroscopic parameters\321e.g., number of live)J
313 160 :M
(objects, total size of live objects, etc.)S
313 170 :M
1.039 .104(The )J
f2_8 sf
.365(mutator)A
f0_8 sf
1.421 .142( \(application code\) in a garbage-collected system adds)J
313 178 :M
2.522 .252(information/entropy to the heap by its allocating and mutating)J
313 186 :M
.112 .011(operations. The ratio of the change in information relative to the change)J
313 194 :M
.346 .035(in allocations \(allocation rate\) might then be used as a "temperature" of)J
313 202 :M
(the mutator.)S
313 213 :M
f7_8 sf
(N.\312\312HEAP TEMPERATURE)S
313 223 :M
f0_8 sf
.464 .046(We consider the temperature of a simple heap of equal-sized locations.)J
313 231 :M
.677 .068(This temperature is the change in heap information resulting from the)J
313 239 :M
1.354 .135(addition of an additional unit of "energy"\321i.e., one additional live)J
313 247 :M
.364 .036(storage location. Thus, if a heap is empty \(all free blocks\), and we add)J
313 255 :M
1.245 .124(one additional live storage location, the amount of information in a)J
313 263 :M
.033 .003(simple case is just the information necessary to specify which of the )J
534 263 :M
f2_8 sf
(N)S
f0_8 sf
(+1)S
313 271 :M
.21 .021(storage locations is the live one\321i.e., log\()J
f2_8 sf
.086(N)A
f0_8 sf
.165 .017(+1\) bits. On the other hand,)J
313 279 :M
.168 .017(if )J
f2_8 sf
(N)S
326 279 :M
f0_8 sf
.257 .026(/2 of the storage locations are live, then the entropy of the heap is at)J
313 287 :M
.034 .003(its maximum, and the temperature becomes infinite. Further increases in)J
313 295 :M
.63 .063(the number of live storage locations result in incremental )J
507 295 :M
f2_8 sf
.092(decreases)A
f0_8 sf
.179 .018( in)J
313 303 :M
1.541 .154(entropy, leading to a negative traditional temperature \("hotter than)J
313 311 :M
.133 .013(infinity"\). A full heap leads to a traditional temperature of )J
505 311 :M
.157 .016(-0. If we use)J
313 319 :M
-.01(the inverse temperature \247, however, instead of the traditional temperature)A
313 327 :M
f2_8 sf
(T)S
f0_8 sf
(, we get a smooth transition from \247=+)S
cF
f1_8 sf
S
sf
( to \247=0 to \247=)S
486 327 :M
(-)S
cF
f1_8 sf
S
sf
(.)S
313 337 :M
.965 .097(The free storage list in a classical Lisp 1.5 system has )J
f2_8 sf
.426(zero)A
518 337 :M
f0_8 sf
.879 .088( entropy,)J
313 347 :M
.06 .006(assuming an infinite free storage list,)J
432 344 :M
(4)S
0 3 rm
.067 .007( and since it is incapable of adding)J
0 -3 rm
313 355 :M
.267 .027(incremental information, its traditional temperature is infinite\321i.e., it is)J
313 363 :M
.283 .028(thermodynamic )J
366 363 :M
f2_8 sf
.149(work)A
f0_8 sf
.389 .039(. The free storage list for a system with different-)J
313 371 :M
.281 .028(sized blocks has a substantial amount of information regarding the sizes)J
313 379 :M
.117 .012(and locations of these blocks. Similarly, the non-decomposed objects on)J
313 387 :M
.004 0(the free stack of a lazy reference count decrementing system also contain)J
313 395 :M
3.449 .345(a substantial amount of information which must be thrown)J
313 403 :M
(away/forgotten before the storage can be reused.)S
313 414 :M
f7_8 sf
(O.\312\312GENERATIONAL GARBAGE COLLECTORS)S
313 424 :M
f0_8 sf
2.612 .261(A compacting garbage collector throws away several kinds of)J
313 432 :M
.58 .058(information. Most copying algorithms are )J
457 432 :M
f2_8 sf
.118(idempotent)A
f0_8 sf
.379 .038(, meaning that if)J
313 440 :M
.325 .033(the GC runs twice in a row, the resulting arrangement of memory is the)J
313 448 :M
.006 .001(same as if the GC had run only once. Such a GC performs a normalizing)J
313 456 :M
.451 .045(task, since it converts arrangements of memory which could not be the)J
313 464 :M
.375 .038(result of a GC operation into arrangements that could. For the copying)J
313 472 :M
.327 .033(GC to perform garbage collection, it must "squeeze out" the garbage by)J
313 480 :M
-.007(compacting the live cells into a contiguous portion of address space. The)A
313 488 :M
.014 .001(information describing the locations and sizes of the gaps that previously)J
313 496 :M
1.008 .101(contained garbage is destroyed. An "address order preserving" copy)J
313 504 :M
.581 .058([Fisher74] compacts the live objects by squeezing out the garbage, but)J
313 512 :M
.653 .065(preserves the ordering of the live objects in memory, which is usually)J
313 520 :M
1.345 .135(identical to the birth ordering or age of the objects. A non-order-)J
313 528 :M
.894 .089(preserving copy\321e.g., depth-first \(stack-like\) or breadth-first \(queue-)J
313 536 :M
.092 .009(like\) traversal canonicalizes the ordering based on reachability instead of)J
313 544 :M
.538 .054(age, and eliminates an additional )J
cF
f1_8 sf
.538 .054J
sf
429 544 :M
f2_8 sf
.127(n)A
f0_8 sf
.104(\245log)A
f2_8 sf
.127(n)A
f0_8 sf
.429 .043( bits of ordering information,)J
313 552 :M
.089 .009(where )J
335 552 :M
f2_8 sf
(n)S
f0_8 sf
.081 .008( is the number of live objects; this information might be valuable)J
313 560 :M
(for preserving locality of reference [Courts88].)S
313 570 :M
.197 .02(At the end of a copying GC cycle, the amount of GC-relevant entropy is)J
313 578 :M
.715 .072(at a minimum, because the operation of the GC itself has reduced the)J
313 586 :M
.796 .08(uncertainty about which items are garbage, and has canonicalized the)J
313 594 :M
.333 .033(locations of the objects. It takes only a few instructions of the mutator,)J
313 602 :M
.006 .001(however, to wipe out a good deal of this information. Right after the GC)J
313 610 :M
.609 .061(finishes, the loss of one live object requires logn bits to specify which)J
313 618 :M
.246 .025(one. Later, after the loss of n/2 live objects, it requires approximately n)J
313 626 :M
.594 .059(bits to specify which objects are live, or about 2 bits per dying object.)J
313 634 :M
.577 .058(Since this is a reduction from logn bits, the temperature is higher than)J
313 642 :M
.313 .031(before. In other words, the temperature is at its lowest point \(hopefully)J
313 650 :M
.29 .029(zero\) at the end of a GC cycle, but quickly rises during the operation of)J
313 658 :M
(the application program\321i.e., )S
f2_8 sf
(a garbage collector is a refrigerator)S
528 658 :M
f0_8 sf
(.)S
313 668 :M
-.001(The computational work performed by a garbage collector can be gauged)A
313 676 :M
.712 .071(by the amount of information it wrings out of the heap. The garbage)J
313 684 :M
.02 .002(collector can extract this amount of information only by asking questions)J
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
313 699.24 -.24 .24 456.24 699 .24 313 699 @a
313 713 :M
f0_9 sf
(4)S
318 716 :M
f0_8 sf
.575 .058(The information in a finite free storage list can be computed from its)J
313 724 :M
(probability distribution function for its length.)S
endp
%%Page: 5 5
%%BeginPageSetup
initializepage
(Henry Baker; page: 5 of 6)setjob
%%EndPageSetup
-31 -31 :T
gS 31 31 552 730 rC
68 47 :M
f0_12 sf
(ACM )S
f2_12 sf
(Sigplan Notices)S
174 47 :M
f0_12 sf
( )S
f4_12 sf
(29)S
f0_12 sf
(,4 \(April 1994\), 58-63.)S
68 754 :M
f0_8 sf
(Copyright \251 1993 by Nimble Computer Corporation)S
315 754 :M
(5)S
68 62 :M
1.155 .115(of the heap and by getting informative answers. In other words, to)J
68 70 :M
.531 .053(extract exactly one bit from the heap, a binary question must be asked)J
68 78 :M
.913 .091(whose answer the garbage collector does not already know\321i.e., the)J
68 86 :M
.378 .038(answer is true 50% of the time and false 50% of the time. To extract k)J
68 94 :M
.222 .022(bits from the heap, at least k binary questions must be asked. However,)J
68 102 :M
-.007(since most of the conditionals in a garbage collector program do not have)A
68 110 :M
1.929 .193(outcomes which are equally likely, the information extracted per)J
68 118 :M
.833 .083(question is less than one bit, and hence more than k binary questions)J
68 126 :M
1.404 .14(must be asked to extract k bits. Note that this characterization of)J
68 134 :M
2.744 .274(computational work is independent of the particular model of)J
68 142 :M
.125 .012(computation, whether it be serial or parallel. The most efficient garbage)J
68 150 :M
.094 .009(collector will ask "efficient" questions whose answers are truly unknown)J
68 158 :M
.125 .012(\(e.g., branch prediction will be ineffective\), and ask questions which can)J
68 166 :M
.342 .034(produce more than one bit\321e.g., some sort of dispatch operation. This)J
68 174 :M
.05 .005(model of computation is consistent with cached and pipelined processors)J
68 182 :M
.099 .01(in which time is proportional to cache misses and pipeline bubbles rather)J
68 192 :M
(than to the mundane, predictable operations.)S
210 189 :M
(5)S
68 202 :M
.406 .041(A compacting GC can easily isolate cells allocated since the end of the)J
68 210 :M
.114 .011(previous GC from the cells which survived the previous GC. Therefore,)J
68 218 :M
.521 .052(when the GC is next called, it has two different contiguous portions of)J
68 226 :M
1.753 .175(address space\321the newly allocated cells and the survivors of the)J
68 234 :M
.387 .039(previous GC. The hypothesis of generational garbage collection is that)J
68 242 :M
.653 .065(these two portions \("generations"\) are not in thermal equilibrium with)J
68 250 :M
.596 .06(one another\321i.e., one has a higher temperature than the other. Let us)J
68 258 :M
1.152 .115(compute these different temperatures. The inverse temperature of a)J
68 266 :M
.876 .088(generation is its change in entropy with the addition of one new live)J
68 274 :M
.009 .001(object. The classical temperature starts at absolute zero \(no live objects\),)J
68 282 :M
.805 .08(grows to infinity \(50% live objects\) and then continues to grow from)J
68 290 :M
.437 .044(negative infinity to minus absolute zero. At the same time, the inverse)J
68 298 :M
1.31 .131(temperature \247 goes smoothly from +)J
cF
f1_8 sf
.131A
sf
1.31 .131( to 0 to -)J
cF
f1_8 sf
.131A
sf
1.31 .131(\321i.e., the inverse)J
68 306 :M
.283 .028(temperature \247 is monotonically related to the percentage of garbage that)J
68 314 :M
1.123 .112(can be recovered. A similar temperature can be calculated for each)J
68 322 :M
.297 .03(generation. In thermodynamic terminology, a generational GC depends)J
68 330 :M
.993 .099(upon the hypothesis that the temperature of the newest generation is)J
68 338 :M
(lower than the temperature of the previous/surviving generation.)S
138 348 :M
(Generational GC Hypothesis:)S
84 356 :M
(Temperature of Newest Gen. < Temperature of Surviving Gen.)S
68 366 :M
1.333 .133(Let us interpret this hypothesis in more familiar terminology. The)J
68 374 :M
.12 .012(temperature of a generation is the \(marginal\) information cost to recover)J
68 382 :M
.263 .026(a storage cell. The generational hypothesis then states that the marginal)J
68 390 :M
1.203 .12(cost to recover one cell from the newest generation is less than the)J
68 398 :M
.278 .028(marginal cost to recover one cell of the surviving generation. Although)J
68 406 :M
.307 .031(the true cost of garbage collecting a generation is not the marginal cost,)J
68 414 :M
.171 .017(but the average cost for all the cells collected, we assume that most cells)J
68 422 :M
1.219 .122(collected will have a cost close to that of the marginal cost, so the)J
68 430 :M
1.515 .151(marginal cost is a reasonable estimate of the average cost. If the)J
68 438 :M
3.225 .323(temperatures are very different\321i.e., the system is far from)J
68 446 :M
2.423 .242(equilibrium\321then the cost of recovering cells from the newest)J
68 454 :M
1.309 .131(generation will be lower than the cost of recovering cells from the)J
68 462 :M
.277 .028(surviving generation. The marginal cost is a more robust indicator than)J
68 470 :M
.872 .087(the average cost, since the average cost depends upon the size of the)J
68 478 :M
(generation and other factors.)S
68 489 :M
f7_8 sf
(P.\312\312CONCLUSIONS)S
68 499 :M
f0_8 sf
.739 .074(We have shown how an application of some of the ideas of statistical)J
68 507 :M
.256 .026(thermodynamics may be used to elucidate certain properties of complex)J
68 515 :M
.453 .045(systems such as garbage collectors. We were inspired by Mandelbrot's)J
68 523 :M
2.684 .268(analogy of word frequency distributions to equilibrium energy)J
68 531 :M
(distributions, and by Margolus's thermodynamics of conservative logic.)S
68 541 :M
2.269 .227(The technique of )J
135 541 :M
f2_8 sf
2.029 .203(simulated annealing)J
f0_8 sf
1.388 .139( [Kirkpatrick83] utilizes the)J
68 549 :M
1.487 .149(temperature concept backwards. It assumes a Maxwell-Boltzmann)J
68 557 :M
.06 .006(distribution of energies and seeks the lowest energy level by a process of)J
68 565 :M
.127 .013(slowly freezing out degrees of freedom having large energies. Although)J
68 573 :M
1.49 .149(there is no guarantee that simulated annealing finds the absolutely)J
68 581 :M
1.568 .157(smallest energy, it attempts to minimize the amount by which the)J
68 589 :M
1.35 .135(minimum is missed. As the temperature is reduced, the change in)J
68 597 :M
.374 .037(information \(amount of work\) required for each additional increment in)J
68 605 :M
.61 .061(energy becomes larger. There eventually comes a point where further)J
68 613 :M
(reductions in energy are not worth the price.)S
68 623 :M
2.508 .251(Since both garbage collection and simulated annealing perform)J
68 631 :M
.059 .006("cooling", there may yet be a place in the realm of garbage collection for)J
68 639 :M
.665 .067(ideas to cross over from the field of optimization. Perhaps locality of)J
68 647 :M
1.092 .109(reference can be optimized by using simulated annealing during GC)J
68 655 :M
(copying.)S
-4096 -4095 -1 1 -4094 -4095 1 -4096 -4096 @a
68 691.24 -.24 .24 211.24 691 .24 68 691 @a
68 705 :M
f0_9 sf
(5)S
73 708 :M
f0_8 sf
.334 .033(It should not be surprising that this model of work is similar to lower-)J
68 716 :M
.098 .01(bound complexity arguments for )J
f2_8 sf
.025(sorting)A
198 716 :M
f0_8 sf
.119 .012( [Knuth73]. Garbage collection,)J
68 724 :M
(after all, )S
97 724 :M
f2_8 sf
(sorts)S
f0_8 sf
( garbage from non-garbage.)S
313 65 :M
f7_8 sf
(REFERENCES)S
313 76 :M
f0_8 sf
.047 .005(Aho, A.V., )J
f2_8 sf
.041 .004(et al.)J
367 76 :M
f0_8 sf
( )S
f2_8 sf
.052 .005(Compilers: Principles, Techniques, and Tools)J
f0_8 sf
.036 .004(. Addison-)J
323 84 :M
(Wesley, Reading, MA 1986.)S
313 92 :M
(Atkins, P.W. )S
f2_8 sf
(The Second Law)S
411 92 :M
f0_8 sf
(. W.H.Freeman, NY, 1984.)S
313 100 :M
1.981 .198(Baker, H.G. "NREVERSAL of Fortune\321The Thermodynamics of)J
323 108 :M
1.106 .111(Garbage Collection". In Bekkers, Y., and Cohen, J., )J
f2_8 sf
.372(Eds)A
f0_8 sf
.338 .034(. )J
526 108 :M
f2_8 sf
(Memory)S
323 116 :M
1.824 .182(Management: Proceedings, International Workshop IWMM92)J
f0_8 sf
.777 .078(, St.)J
323 124 :M
(Malo, France, Springer LNCS 637, 1992.)S
313 132 :M
.922 .092(Baker, H.G. "'Infant Mortality' and Generational Garbage Collection".)J
323 140 :M
(ACM )S
f2_8 sf
(Sigplan Not. 28)S
f0_8 sf
(,4 \(April\3121993\), 55-57.)S
313 148 :M
.627 .063(Bennett, C.H. "Experimental Quantum Cryptography". J)J
506 148 :M
f2_8 sf
.667 .067(. Cryptology 5)J
323 156 :M
f0_8 sf
(\(1992\), 3-28.)S
313 164 :M
.858 .086(Brush, S.G. )J
358 164 :M
f2_8 sf
.712 .071(Statistical Physics and the Atomic Theory of Matter From)J
323 172 :M
1.648 .165(Boyle and Newton to Landau and Onsager)J
476 172 :M
f0_8 sf
1.748 .175(. Princeton U. Press,)J
323 180 :M
(Princeton, 1983.)S
313 188 :M
.61 .061(Clark, D.W., and Green, C.C. "An Empirical Study of List Structure in)J
323 196 :M
(Lisp". )S
f2_8 sf
(CACM 20)S
379 196 :M
f0_8 sf
(,2 \(Feb.\3121977\), 78-87.)S
313 204 :M
.706 .071(Collins, G.E. "A method for overlapping and erasure of lists". )J
f2_8 sf
.474(CACM)A
323 212 :M
(3)S
f0_8 sf
(,12 \(Dec. 1960\), 655-657.)S
313 220 :M
.552 .055(Courts, H.R. "Improving Locality of Reference in a Garbage-Collecting)J
323 228 :M
(Memory Management System". )S
f2_8 sf
(CACM 31)S
f0_8 sf
(,9 \(1988\).)S
313 236 :M
.825 .083(Cramer, J.G. "The transactional interpretation of quantum mechanics".)J
323 244 :M
f2_8 sf
(Revs. of Mod. Phys. 58)S
397 244 :M
f0_8 sf
(,3 \(July\3121986\), 647-687.)S
313 252 :M
1.314 .131(d'Espagnat, B. "The Quantum Theory and Reality". )J
502 252 :M
f2_8 sf
1.421 .142(Sci. Amer)J
f0_8 sf
.992 .099(. 241)J
323 260 :M
(\(1979\), 158-181.)S
313 268 :M
.979 .098(DeWitt, B., and Graham, N., )J
f2_8 sf
.433(eds)A
426 268 :M
f0_8 sf
1.544 .154(. )J
436 268 :M
f2_8 sf
.825 .082(The Many-Worlds Interpretation of)J
323 276 :M
(Quantum Mechanics)S
f0_8 sf
(. Princeton U. Press, NJ, 1973.)S
313 284 :M
.023 .002(Erickson, G.J., and Smith, C.R. )J
418 284 :M
f2_8 sf
.018 .002(Maximum-Entropy and Bayesian Methods)J
323 292 :M
.727 .073(in Science and Engineering, Vol. I: Foundations)J
486 292 :M
f0_8 sf
.821 .082(. Kluwer Academic)J
323 300 :M
(Publs., Dordecht, 1988.)S
313 308 :M
1.254 .125(Feynman, R.P., )J
369 308 :M
f2_8 sf
1.099 .11(et al)J
f0_8 sf
.307 .031(. )J
f2_8 sf
1.821 .182(The Feynman Lectures on Physics)J
f0_8 sf
1.345 .134(. Addison)J
551 308 :M
(-)S
323 316 :M
(Wesley, Reading, MA 1963.)S
313 324 :M
.894 .089(Fisher, D.A. "Bounded Workspace Garbage Collection in an Address)J
551 324 :M
(-)S
323 332 :M
1.372 .137(Order-Preserving List Processing Environment". )J
496 332 :M
f2_8 sf
1.065 .106(Inf.Proc.Lett. 3)J
548 332 :M
f0_8 sf
(,1)S
323 340 :M
(\(July\3121974\), 29)S
372 340 :M
(-32.)S
313 348 :M
.887 .089(Gottfried, K., and Weisskopf, V. )J
430 348 :M
f2_8 sf
.809 .081(Concepts of Particle Physics, Vol. I)J
551 348 :M
f0_8 sf
(.)S
323 356 :M
(Clarendon Press, Oxford, 1986.)S
313 364 :M
-.005(Gutowitz, H., )A
f2_8 sf
(ed)S
366 364 :M
f0_8 sf
-.043(. )A
372 364 :M
f2_8 sf
-.004(Cellular Automata: Theory and Experiment)A
512 364 :M
f0_8 sf
-.01(. MIT Press,)A
323 372 :M
(Camb., MA, 1991.)S
313 380 :M
1.299 .13(Hartley, R.V.L. "Transmission of Information". )J
f2_8 sf
1.003 .1(Bell Sys. Tech. J. 7)J
323 388 :M
f0_8 sf
(\(July\3121928\), 535)S
376 388 :M
(-563.)S
313 396 :M
1.411 .141(Huberman, B.A., )J
375 396 :M
f2_8 sf
1.375(ed)A
f0_8 sf
.993 .099(. )J
393 396 :M
f2_8 sf
1.346 .135(The Ecology of Computation)J
493 396 :M
f0_8 sf
1.373 .137(. North-Holland,)J
323 404 :M
(Amsterdam, 1988.)S
313 412 :M
(Jaynes, E.T. "The Relation of Bayesian and Maximum Entropy Methods".)S
323 420 :M
(In [Erickson88], 25-29.)S
313 428 :M
1.074 .107(Jaynes, E.T. "The Evolution of Carnot's Principle". In [Erickson88],)J
323 436 :M
(267-281.)S
313 444 :M
.361 .036(Khinchin, A.I. )J
365 444 :M
f2_8 sf
.326 .033(Mathematical Foundations of Information Theory)J
f0_8 sf
.169 .017(. Dover)J
323 452 :M
(Publs., New York, 1957.)S
313 460 :M
.702 .07(Kirkpatrick, S, )J
365 460 :M
f2_8 sf
.511 .051(et al)J
f0_8 sf
.681 .068(. "Optimization by Simulated Annealing". )J
f2_8 sf
.223(Science)A
323 468 :M
(220)S
f0_8 sf
( \(1983\), 671-680.)S
313 476 :M
1.03 .103(Knuth, D.E. )J
f2_8 sf
1.687 .169(The Art of Computer Programming, V.1: Fundamental)J
323 484 :M
(Algorithms, 2nd Ed)S
f0_8 sf
(. Addison-Wesley, 1973.)S
313 492 :M
.744 .074(Knuth, D.E. )J
f2_8 sf
1.233 .123(The Art of Computer Programming, V.2: Seminumerical)J
323 500 :M
(Algorithms, 2nd Ed)S
f0_8 sf
(. Addison-Wesley, 1981.)S
313 508 :M
1.302 .13(Knuth, D.E. )J
f2_8 sf
1.896 .19(The Art of Computer Programming, V.3: Sorting and)J
323 516 :M
(Searching)S
f0_8 sf
(. Addison-Wesley, 1973.)S
313 524 :M
3.312 .331(Kuhn, T.S. )J
366 524 :M
f2_8 sf
2.358 .236(Black-Body Theory and the Quantum Discontinuity)J
323 532 :M
(1894-1912)S
358 532 :M
f0_8 sf
(. U. of Chicago Press, 1978.)S
313 540 :M
2.533 .253(Mandelbrot, B. "The Role of Sufficiency and of Estimation in)J
323 548 :M
(Thermodynamics". )S
f2_8 sf
(Ann. Math. Stat. 33)S
f0_8 sf
( \(1962\), 1021)S
494 548 :M
(-1038.)S
313 556 :M
.585 .058(Margolus, N.H. )J
f2_8 sf
.971 .097(Physics and Computation)J
456 556 :M
f0_8 sf
.879 .088(. Ph.D., MIT Physics Dept.,)J
323 564 :M
(MIT/LCS/TR-415, March 1988.)S
313 572 :M
(Marvan, M. )S
355 572 :M
f2_8 sf
(Negative Absolute Temperatures)S
460 572 :M
f0_8 sf
(. Iliffe, London, 1966.)S
313 580 :M
.022 .002(Olsson, O. "The Memory Usage of a LISP System: The Belady Life-Time)J
323 588 :M
(Function". )S
361 588 :M
f2_8 sf
(Sigplan Not. 18)S
f0_8 sf
(,12 \(1983\), 112-119.)S
313 596 :M
.329 .033(Prigogine, I., and Stengers, I. )J
414 596 :M
f2_8 sf
.313 .031(Order Out of Chaos: Man's New Dialogue)J
323 604 :M
(with Nature)S
f0_8 sf
(. Bantam Books, NY 1984.)S
313 612 :M
.947 .095(Penrose, R. )J
358 612 :M
f2_8 sf
.717 .072(The Emperor's New Mind: Concerning Computers, Minds,)J
323 620 :M
(and The Laws of Physics)S
403 620 :M
f0_8 sf
(. Penguin Books, NY, 1989.)S
313 628 :M
1.497 .15(Raisbeck, G. )J
365 628 :M
f2_8 sf
1.14 .114(Information Theory: An Introduction for Scientists and)J
323 636 :M
(Engineers)S
f0_8 sf
(. MIT Press, Camb., MA 1963.)S
313 644 :M
(Reichenbach, H. )S
f2_8 sf
(The Direction of Time)S
441 644 :M
f0_8 sf
(. U. Cal. Press, Berkeley, 1956.)S
313 652 :M
2.239 .224(Schorr, H., and Waite, W.M. "An efficient machine-independent)J
323 660 :M
.033 .003(procedure for garbage collection in various list structures". )J
516 660 :M
f2_8 sf
(CACM 10)S
f0_8 sf
(,8)S
323 668 :M
(\(Aug. 1967\), 501-506.)S
313 676 :M
(Schr\232dinger, E. )S
367 676 :M
f2_8 sf
(Statistical Thermodynamics)S
f0_8 sf
(. Dover, NY, 1952.)S
313 684 :M
.111 .011(Shannon, C.E. "A Mathematical Theory of Communication, I.". )J
f2_8 sf
.13 .013(Bell Sys.)J
323 692 :M
(Tech. J. 27)S
f0_8 sf
(,3 \(July\3121948\), 379)S
419 692 :M
(-423.)S
313 700 :M
-.009(Shannon, C.E. "A Mathematical Theory of Communication, II.". )A
526 700 :M
f2_8 sf
-.007(Bell Sys.)A
323 708 :M
(Tech. J. 27)S
f0_8 sf
(,4 \(Oct.\3121948\), 623)S
419 708 :M
(-656.)S
313 716 :M
.56 .056(Shore, J.E. "Anomalous Behavior of the Fifty-Percent Rule in Dynamic)J
323 724 :M
(Memory Allocation". )S
396 724 :M
f2_8 sf
(CACM 20)S
f0_8 sf
(,11 \(1977\).)S
endp
%%Page: 6 6
%%BeginPageSetup
initializepage
(Henry Baker; page: 6 of 6)setjob
%%EndPageSetup
-31 -31 :T
gS 31 31 552 730 rC
68 47 :M
f0_12 sf
(ACM )S
f2_12 sf
(Sigplan Notices)S
174 47 :M
f0_12 sf
( )S
f4_12 sf
(29)S
f0_12 sf
(,4 \(April 1994\), 58-63.)S
68 754 :M
f0_8 sf
(Copyright \251 1993 by Nimble Computer Corporation)S
315 754 :M
(6)S
68 62 :M
1.142 .114(Stauffer, D. )J
f2_8 sf
1.763 .176(From Newton to Mandelbrot: A Primer in Theoretical)J
78 70 :M
(Physics)S
f0_8 sf
(. Springer-Verlag, Berlin, 1990.)S
68 78 :M
(Suzuki, N. "Analysis of Pointer 'Rotation'". )S
213 78 :M
f2_8 sf
(CACM 25)S
f0_8 sf
(,5 \(\3121982\), 330.)S
68 86 :M
2.098 .21(Toffoli, T., & Margolus, N. )J
179 86 :M
f2_8 sf
1.71 .171(Cellular Automata Machines: A new)J
78 94 :M
(environment for modeling)S
f0_8 sf
(. MIT Press, Camb., MA 1987.)S
68 102 :M
.569 .057(Tribus, M. )J
f2_8 sf
1.136 .114(Thermostatistics and Thermodynamics: An Introduction to)J
78 110 :M
3.017 .302(Energy, Information and States of Matter, with Engineering)J
78 118 :M
(Applications)S
f0_8 sf
(. van Nostrand, Princeton, 1961.)S
68 126 :M
.4 .04(Ungar, D. "Generation Scavenging: A Non-disruptive High Performance)J
78 134 :M
(Storage Reclamation Algorithm". )S
f2_8 sf
(Sigplan Not. 19)S
f0_8 sf
(,5 \3121984\), 157)S
284 134 :M
(-167.)S
68 142 :M
(Wannier, G.H. )S
f2_8 sf
(Statistical Physics)S
178 142 :M
f0_8 sf
(. Dover, New York, 1966.)S
68 150 :M
-.011(Wolfram, S. "Statistical mechanics of cellular automata". )A
f2_8 sf
-.013(Rev. Mod. Phys.)A
78 158 :M
(55)S
f0_8 sf
( \(1983\), 601-644.)S
68 166 :M
.048 .005(Zeh, H.-D. )J
107 166 :M
f2_8 sf
.037 .004(The Physical Basis of The Direction of Time)J
f0_8 sf
.047 .005(. Springer-Verlag,)J
78 174 :M
(Berlin, 1989.)S
68 182 :M
.72 .072(Zurek, W.H., )J
f2_8 sf
.404(ed)A
123 182 :M
f0_8 sf
1.262 .126(. )J
132 182 :M
f2_8 sf
.749 .075(Complexity, Entropy and the Physics of Information)J
f0_8 sf
(.)S
78 190 :M
(Addison-Wesley, Redwood City, CA 1990.)S
endp
%%Trailer
end
%%EOF