Changeset 840
- Timestamp:
- Jun 2, 2004, 5:13:23 PM (22 years ago)
- File:
-
- 1 edited
-
trunk/doc/design/hardware.tex (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/doc/design/hardware.tex
r669 r840 806 806 807 807 \end{document} 808 809 810 \subsection{Computer Hardware} 811 812 \subsubsection{Overview} 813 814 This section discusses the Pan-STARRS Image Processing Pipeline (IPP) 815 PS-1 hardware requirements. The hardware requirements addressed in 816 this section consist of: 817 818 \begin{itemize} 819 \item Total Disk Volume 820 \item Total Processing Power 821 \item Sustained Switch Bandwidth 822 \item Sustained Node Network I/O 823 \item Sustained Disk I/O 824 \end{itemize} 825 826 Even without the complete IPP design, it is possible to identify the 827 major drivers on the hardware requirements. The total disk volume 828 requirements are dominated by the need to store raw images for a 829 certain period, the need to store calibration images for a longer 830 period, and the need to store the static sky images. Of the various 831 analysis stages, Phase 2 and Phase 4 present the most significant 832 demands in terms of data I/O throughput on the network. Phase 2 and 833 Phase 4 also present the most significant CPU demands. In this 834 discusion, Phase 2 refers to the per-OTA image pre-processing in which 835 the instrumental signature is removed and a first pass object 836 detection is performed. Phase 4 refers to the multiple OTA 837 combination in which the pre-processed images are merged and combined, 838 in both addition and subtraction, with the static sky image, and up to 839 three object detection passes are performed. 840 841 This document does not address the hardware requirements implied by 842 Phase 1 or 3, nor the load required by the calibration or reference 843 catalog creation stages. In the first instance, the operations are 844 only performed on the metadata and are extremely minimal both in terms 845 of data I/O and computation requirements. In the second case, the 846 processing is less time critical than the per-image processing and is 847 performed only infrequently (once per night to once per week, month or 848 year). \tbd{The software implementation for metadata storage (RDBMS, 849 FITS tables, etc) will have a very large impact and will be evaluated 850 along with the needed hardware at a later date.} 851 852 We will address the various hardware requirements by referring to an 853 assumed data processing and data organization scenario. The 854 organization of the data and certain aspects of the data processing 855 scheme have very large implications for the hardware requirements. In 856 this analysis, we assume that data types are chosen to minimize the 857 data volume and that the data is organized to minimize the I/O 858 bandwidth needs, as defined below. We address the data requirements 859 of the single-telescope Pan-STARRS-1 scenario based on the Design 860 Reference Mission \tbd{REF}. 861 862 \subsubsection{Data Organization} 863 864 The IPP hardware system must provide both data storage and 865 computational resources. The IPP requires relatively large amounts of 866 data storage space, primarily for the image data. Image data is 867 organized in two categories. First, there is the per-OTA data -- data 868 associated with specific OTAs, including the raw images, the 869 calibration images, and temporary processed images at various stages. 870 Second, there is the data associated with the static sky imagery, 871 which is in turn organized into smaller sky-cell units. The first 872 assumption we make is that the hardware is organized into nodes which 873 provide both data storage and computational resources. The second 874 assumption we make is that the data storage nodes are divided into two 875 classes: those which deal with the per-OTA data and those that provide 876 the static sky storage. In addition, we assume that the computational 877 tasks related to Phase 2 take place on the per-OTA storage nodes and 878 the Phase 4 computation takes place on the static sky storage nodes. 879 880 Figure~\ref{hardware} shows our basic concept for the hardware 881 organization for the IPP. This diagram shows the two types of compute 882 nodes: OTA-level processing and storage nodes (dominated by Phase 2) 883 and static sky processing and storage nodes (mostly Phase 4). Also 884 shown are two switches used in this configuration; although it is 885 currently possible to buy a single switch with sufficient number of 886 ports, this organization represents a minimal configuration for the 887 PS-1 IPP hardware. In such a case, the interswitch communication must 888 also meet the required throughput needs. We discuss the hardware 889 requirements in the assumption that such an organization will be 890 necessary. 891 892 The way in which the images are distributed among the storage and 893 compute nodes will largely determine the I/O bandwidth requirements. 894 For data bandwidth requirements calculations, it is necessary to make 895 some assumptions about the data organization. We make the assumption 896 that the OTA data is optimally distributed to the OTA nodes such that 897 the OTA processing is always on a machine with local OTA data. This 898 implies that all OTA data from a specific OTA are targetted to a 899 specific machine. (see below for discussion of data duplication). 900 901 A second factor which will have a significant impact on the I/O 902 requirements is the image storage format for the processed and 903 calibration images. We have two basic choices: 32 bit floating point 904 format or 16 bit integer format with appropriate scaling. In the 905 former case, additional dynamic range is retained, while in the latter 906 case, we reduce the data volume by a factor of 2. Since the science 907 requirements for PS-1 do not specify a need for dynamic range greater 908 than 16 bits, we assume all images are stored as 16 bit data. 909 910 A third determining factor is the number of calibration images needed 911 by the processing system. Since the complete analysis is not yet 912 defined, this number is difficult to ascertain. However, we can make 913 a reasonable guess at the total number for scaling purposes. We 914 assume that each frame requires a total of 4 calibration frames on 915 average 916 917 \begin{table}[b] 918 \begin{center} 919 \caption{Data Storage Requirements \label{storage}} 920 \begin{tabular}{lrrrr} 921 \hline 922 \hline 923 Raw data & 200 TB \\ 924 static sky & 256 TB \\ 925 calibration frames & 5 TB \\ 926 metadata db & 0.3 TB \\ 927 object db & 4 TB \\ 928 \hline 929 total & 116 TB \\ 930 \hline 931 \end{tabular} 932 \end{center} 933 \end{table} 934 935 \subsubsection{Data Storage Requirements} 936 937 The Pan-STARRS IPP data storage requirements may be divided into five 938 principal areas: raw image data, static sky image data, master 939 calibration images, the metadata database, and the object database. 940 We discuss each of these data items and their impact on the data 941 storage requirements for the IPP for PS-1. Table~\ref{storage} 942 summarizes the data storage requirements in the different scenarios. 943 944 \paragraph{Raw Data Storage} 945 946 There are two basic image types which will be acquired: night-time 947 science images and calibration images. The night-time science images 948 consist of 1Gpix per image, or 2GB in raw format. At nominal cadence, 949 the PS-1 telescope can obtain images at a sustained rate of 1 image 950 per 30 seconds for the entire night of 10 hours (36000 seconds). A 951 total of 100 calibration images per night would be a substantial 952 overestimate of the typical expectation. Combining these numbers, we 953 can expect to receive a total of 1300 images, or 2.6 TB of data per 954 night. The total data storage requirements for the raw data are 955 governed by the number of nights' worth of data we are required to 956 keep online. \tbd{for the first year, we are required to keep all 957 images from the AP and IPV surveys. This amounts to a total of 200 958 TB of data}. 959 960 \paragraph{Static Sky Data Storage} 961 962 The static sky is represented by images with 0.2 arcsec per pixel. 963 There will be one summed image and one weight image for each of the 964 \tbd{6} filters, each stored with 16 bits of resolution, for a total 965 of 24 bytes per sky pixel. At this resolution, there are 324 Mpix per 966 square degree, and we will observe a potential total area of 30,000 967 square degrees. Allowing for 10\% overage for overlapping tiling, we 968 require a total of 10.7 Tpix to cover the sky once, or a total of 969 $\sim 256$ TB to maintain a single image of the static sky in all 6 970 filters. 971 972 \paragraph{Calibration Frame Storage} 973 974 The possible required calibration frames consist of the bias, dark, 975 and mask images, along with one flat, one flat-correction, and 976 multiple sky/fringe library frames per filter. In fact, not all types 977 are needed at all stages. It is very likely that we will not require 978 bias or dark images, and mask images may be represented by a single 979 byte per pixel. Nonetheless, it is necessary for us to generate and 980 store all master calibration frames at least until we prove that they 981 are not needed. We assume a total of 21 calibration images are 982 necessary (one flat, fringe, and sky per filter, along with a bias, 983 dark, and mask). If we intend to keep all master calibration frames 984 for the project lifetime, and generate a new master on a weekly basis 985 (a reasonable time-scale), then we can expect to require a total of 5 986 TB of calibration image by the end of the 2 years of PS-1. We note 987 that this is likely to be a drastic overestimate as we are unlikely to 988 need to regenerate all master calibration frames on a weekly 989 time-scale. 990 991 \paragraph{Metadata Database Storage} 992 993 The metadata data storage requirements are driven by the need to store 994 the data for the project lifetime. There are two types of metadata 995 generated at the summit: data associated with images and environmental 996 data. The environmental data consists of measurements on a regular 997 cadence, roughly 1 per minute, of a variety of parameters. We suggest 998 an expected of 1kB per entry, for a total of 1 GB over the two-year 999 term of PS-1. The additional systems, such as the DIMM, SkyProbe, NIR 1000 Sky Camera, and the LRProbe will have higher data requirements, but 1001 should be considered as separate, self-contained systems. Their data 1002 products are distilled to a limited number of parameters per minute 1003 which are included in the 1kB given above. Furthermore, items such as 1004 guide-star history, if saved, will be saved with the image data and 1005 represents only a small fraction of the total image data volume. Some 1006 subset of the telescope diagnosic information may be a high volume 1007 data product as well, but only retained by the telescope control 1008 system for the purpose of diagnostic studies. Such data will be 1009 excluded from this analysis. 1010 1011 The image metadata consists of values associated with the FPA (1), the 1012 OTAs (64), and the Cells (4096). Aside from the guide star history, 1013 the total data requirements for each of these entries will be scaled 1014 by the number of bytes required for the metadata from each data level. 1015 Clearly, if the Cell entry is allowed to be large, it will dominate 1016 the total Metadata data volume. We suggest an expected number of 64 1017 bytes per Cell, 256 B per OTA, and 1k per FPA, yielding a total 1018 metadata volume per exposure of roughly 0.3 MB, completely dominated 1019 by the Cell metadata. With the exposure rates above, we find a total 1020 of metadata volume of 0.3 TB over the two-year term of PS-1. 1021 1022 \paragraph{Object Database Storage} 1023 1024 The hardware requirements for the IPP object database are rather 1025 flexible: the total volume depends critically on the depth to which 1026 the object detection analyses are performed (and thus the total number 1027 of object detections) and the number of object parameters which are 1028 measured. We can make very rough estimates that the total number of 1029 detections over the 2 year lifetime of the project may be in the 1030 vicinity of $10^{11}$. We can conservatively estimate the number of 1031 bytes needed to represent each detection as 128 B, resulting in a 1032 total data storage for the object detections of 12 TB. However, this 1033 number depends strongly on the timescale for which the IPP is required 1034 to maintain all object detections, and may potentially be 1035 significantly reduced. 1036 1037 \subsubsection{CPU Requirements} 1038 1039 Phase 2 and Phase 4 dominate the processing requirement, primarily 1040 because they must keep up with the image delivery rate of 1 per 30 1041 seconds. We have performed benchmarks of a demonstration version for 1042 both the Phase 2 and Phase 4 analyses. 1043 1044 For the Phase 2, a substantial fraction of the processing time is 1045 consumed by the need to perform FFTs on the images in order to 1046 convolve them with the guide-star kernel, and in the smoothing used 1047 for the object detection process. Additional processing time is 1048 needed by the object detection, deblending, and analysis. Experiments 1049 with the FFTW package show that FFTs may be performed on Intel 1050 processors at rates of approximately 0.25 GHz-sec / Mpix for data sets 1051 of order 1 Megapixel. The FFTs required for the Phase 2 analysis are 1052 performed on the 512$^2$ pixel cells, so these numbers may roughly be 1053 scaled linearly to determine the total time required for OTA 1054 processing. A single FFT on a full OTA, with 64 Cells, therefore 1055 requires roughly 4 GHz-sec. For the full Phase 2 analysis, there are 1056 roughly 4 single direction FFTs required excluding those associated 1057 with object detection; thus the total processing time for these FFTs 1058 is approximately 16 GHz-sec. The addtional analysis steps, excluding 1059 object detection and characterization, account for a small fraction of 1060 this compute time, which we estimate at 10\%. The object detection 1061 stage depends somewhat on the depth to which the analysis is 1062 performed, and the number of measurements made per object. Typical 1063 analysis performed by the Sextractor routine, which performs a 1064 substantial number of per-object analyses, requires 27 GHz-sec for a 1065 full OTA, including the FFTs used for smoothing. We can therefore 1066 assume a total of 50 GHz-sec per OTA for the Phase 2 processing. This 1067 converts to a total of 12800 GHz-sec for a complete major frame. 1068 1069 For Phase 4, the main computational tasks are combining the multiple 1070 images, with cosmic-ray rejection, and performing the object detection 1071 tasks. Nick Kaiser has done tests of the Phase 4 image combine and 1072 rejection stages, and finds a total processing time of roughly 96 1073 GHz-sec for a full stack of 4 OTA images. If we add in an additional 1074 34 GHz-sec for detailed object detection and image differencing, we 1075 find a conservative estimage of 130 GHz-sec for a 4-image OTA stack, 1076 equivalent to 7800 GHz-sec for a major frame. 1077 1078 For PS-1, the typical time for a major frame is $4 \times 30$ seconds. 1079 Some reduction in the load may be gained by reducing the complexity 1080 and depth of analysis for PS-1. Depending on the details and depth of 1081 the analysis, we may reduce the computational load by a factor of 2. 1082 1083 \begin{table} 1084 \begin{center} 1085 \caption{Data I/O (MB per OTA or Sky-cell) \label{scenarios}} 1086 \begin{tabular}{lrrrr} 1087 \hline 1088 \hline 1089 {\em Phase 2 input} \\ 1090 from summit & $2 \times 32$ MB \\ 1091 input image & {\bf 32 MB} \\ 1092 calibration & {\bf 4 $\times$ 32 MB} \\ 1093 mask image & {\bf 8 MB} \\ 1094 \hline 1095 network I/O: & 64 MB \\ 1096 disk I/O: & 176 MB \\ 1097 & \\ 1098 {\em Phase 2 output} \\ 1099 output image & {\bf 32 MB} \\ 1100 output mask & {\bf 8 MB} \\ 1101 image to P4 & $1.5 \times 32$ MB \\ 1102 mask to P4 & $1.5 \times 8$ MB \\ 1103 \hline 1104 network I/O: & 60 MB \\ 1105 disk I/O: & 40 MB \\ 1106 & \\ 1107 {\em Phase 4} & \\ 1108 input images & $1.5 \times 4 \times 32$ MB \\ 1109 input masks & $1.5 \times 4 \times 8$ MB \\ 1110 static sky & 32 MB \\ 1111 static weight & 32 MB \\ 1112 \hline 1113 input: & 304 MB \\ 1114 output: & 96 MB \\ 1115 \hline 1116 \multicolumn{5}{l}{\em Bold-faced entries are access to local-disk} \\ 1117 \multicolumn{5}{l}{\em parenthesised disk I/O numbers are parallel with the network I/O} \\ 1118 \end{tabular} 1119 \end{center} 1120 \end{table} 1121 1122 \subsubsection{Per-Node I/O Requirements} 1123 1124 Data I/O per node is defined as the number of bytes per second passed 1125 through the node's network adapter. The data throughput for each node 1126 depends strongly on the how the data is organized and processed. In 1127 this section, we identify the data which is passed between nodes for 1128 the two stages of the science analysis process. Table~\ref{scenarios} 1129 lists the per-node data I/O for the analysis stages. 1130 1131 For PS-1, there are 120 seconds of compute time allowed for each of 1132 the Phase 2 and Phase 4 analyses for the collection of four images 1133 which makes up a cannonical major frame. We use the data I/O volumes 1134 and some assumptions about expected network and disk bandwidth to 1135 estimate the I/O and processing timeline for the four scenarios. From 1136 this analysis, we can judge the total CPU requirements in terms of 1137 GHz, not just GHz-sec. We have assumed that GigE network adapters are 1138 capable of delivering data at 50MB/sec sustained and that a disk RAID 1139 can deliver sustained 100 MB/sec reads and writes. These numbers are 1140 conservative estimates based on recent tests discussed below. Using 1141 these assumptions, Table~\ref{throughput} lists the time allocations 1142 for the processing stages. 1143 1144 \paragraph{Phase 2 Node I/O Requirements} 1145 1146 In the assumed data distribution scenario, there is a single CPU 1147 allocated to each OTA in the OTA farm and a single CPU for each Sky 1148 cell process. In addition, all data for the specified OTA are stored 1149 on local disks attached to the same computer as the CPU, with the 1150 result that all Phase 2 I/O is made to a local disk. For each science 1151 OTA image which is observed, each OTA node will read from the network 1152 a total of 2 raw images (one for the original image, one for a backup 1153 copy) and write an average of roughly 1.5 processed images and masks 1154 to the Phase 4 machines for a total of 124 MB of network I/O. During 1155 the processing stage, the OTA node will read from disk a total of 176 1156 MB (4 calibration frames at 32 MB each, one 16 MB mask, and one raw 1157 science image at 32 MB) and write a total of 40 MB (one processed 1158 image at 32 MB and one mask at 8 MB). Given the assumptions for the 1159 network and disk bandwidths (50 MB/s and 100 MB/s respectively), the 1160 data volumes imply a total I/O period of 4.6 seconds. In this 1161 instance, the network I/O is presumed to be sequential with the disk 1162 I/O. 1163 1164 \paragraph{Phase 4 Node I/O Requirements} 1165 1166 Although it is easy to arrange the OTA data in such a way that the 1167 majority of I/O is performed locally, it is not as easy to arrange 1168 this for the Static Sky data used by the Phase 4 analysis. We 1169 therefore make the assumption that the Phase 4 analysis will require 1170 all input OTA data to be loaded across the network, as well as all 1171 Static Sky data. This is somewhat of an overestimate as some of the 1172 Static Sky data will be processed by machines with the data stored 1173 locally, and clever Static-Sky data organization schemes can enhance 1174 this chance. 1175 1176 In the Phase 4 analysis, the images from the 4 separate telescopes are 1177 combined into a single image, confronted with the appropriate segment 1178 of the static sky, with output difference image and updated static sky 1179 image. If we restrict input access to the individual OTA cells, the 1180 maximum read overhead is 50\% (need to read a 10x10 set of cells for 1181 an 8x8 input image). If the processing is performed on Static Sky 1182 segments equivalent in size to the OTAs, the total volume of input 1183 data per node is 304 MB (192 MB of processed science image, 48 MB of 1184 input mask, 32 MB of static sky image and 32 MB of static sky weight 1185 map) while the output data is 96 MB (32 MB static sky, 32 MB weight 1186 map, and 32 MB difference image). Thus, we require a total of 400 MB 1187 network I/O, which implies an I/O period of 8 seconds. 1188 1189 \begin{table} 1190 \begin{center} 1191 \caption{Data Throughput \label{throughput}} 1192 \begin{tabular}{lrrrr} 1193 \hline 1194 \hline 1195 Phase 2 per-node network I/O & 2.2 s \\ 1196 Phase 2 per-node disk I/O (read) & 1.3 s \\ 1197 Phase 2 per-node disk I/O (write) & 1.2 s \\ 1198 Phase 2 CPU total & 25 s : 128 GHz \\ 1199 Phase 4 per-node I/O & 8 s \\ 1200 Phase 4 CPU total & 112 s : 70 GHz \\ 1201 Phase 2 switch load & 264 MB/s \\ 1202 Phase 4 switch load & 215 MB/s \\ 1203 Phase 2 to Phase 4 switch load & 160 MB/s \\ 1204 Summit to Phase 2 switch load & 70 MB/s \\ 1205 \hline 1206 \end{tabular} 1207 \end{center} 1208 \end{table} 1209 1210 \subsubsection{Switch I/O Requirements} 1211 1212 The switch I/O requirements are defined by the total number of bytes 1213 per second serviced by the two switches in the system. 1214 1215 The Phase 2 network I/O is 124 MB per OTA. With 64 OTAs per image, 1216 and 30 seconds average between images, this implies a total of 264 1217 MB/s switch bandwidth. The Phase 4 network I/O is 400 MB per sky 1218 cell. With 64 cells and 120 seconds between major frames, this is an 1219 average switch bandwidth of 215 MB/s switch bandwidth. The total 1220 switch-to-switch load is 304 MB per OTA, with an average timescale of 1221 120 seconds. With 64 OTAs, this corresponds to 160 MB/s. The 1222 summit-to-Phase 2 switch load is 70 MB/s. 1223 1224 \begin{table} 1225 \begin{center} 1226 \caption{Hardware Throughput Tests \label{existing-hardware}} 1227 \begin{tabular}{lrrrr} 1228 \hline 1229 \hline 1230 Test & where \& when & model & result \\ 1231 \hline 1232 node I/O & CFHT 11/2002 & Intel 1000 Gigabit & 35 - 40 MB/s sustained \\ 1233 node I/O & CFHT 2/2004 & Intel 1000 Gigabit & 65 - 70 MB/s sustained \\ 1234 RAID write & CFHT 2/2004 & 3ware RAID cntl + IDE & 110 MB/s sustained \\ 1235 Switch Load & VeriTest & Cisco & 3 GB/s (for 32 ports) \\ 1236 \hline 1237 \end{tabular} 1238 \end{center} 1239 \end{table} 1240 1241 \subsubsection{Existing Hardware Throughput} 1242 1243 We have collected a few representative tests of various pieces of 1244 modern hardware to give a reference for the throughput capabilities. 1245 A number of hardware configurations have been tested at CFHT for the 1246 Elixir project, and we include here their recent reported hardware 1247 RAID-5 I/O speeds and GigE card speeds. We also have included data 1248 from VeriTest studies of Cisco switch throughput, commissioned by 1249 Cisco for a 32 port GigE switch. These tests are summarized in 1250 Table~\ref{existing-hardware}. 1251
Note:
See TracChangeset
for help on using the changeset viewer.
