Changeset 418 for trunk/doc/design/specs.tex
- Timestamp:
- Apr 12, 2004, 4:18:48 PM (22 years ago)
- File:
-
- 1 edited
-
trunk/doc/design/specs.tex (modified) (37 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/doc/design/specs.tex
r414 r418 1 %%% $Id: specs.tex,v 1. 3 2004-04-12 19:21:27eugene Exp $1 %%% $Id: specs.tex,v 1.4 2004-04-13 02:18:48 eugene Exp $ 2 2 \documentclass[panstarrs]{panstarrs} 3 3 … … 13 13 \docnumber{PSDC-430-005} 14 14 15 \setcounter{tocdepth}{4} % lowest level to be included in toc 16 15 17 \begin{document} 16 18 \maketitle … … 249 251 \item Object Database 250 252 \item Metadata Database 251 \item Analysis Pipelines253 \item Analysis Stages 252 254 \item Controller 253 255 \item Scheduler … … 380 382 Third, stars in the general vicinity of the solar system fall in 381 383 between these first two classes of objects. Their proper motion and 382 parallax response is significant enough ($>1 \asec$in 10 years) that384 parallax response is significant enough ($>1$ arcsec in 10 years) that 383 385 they are not well-described by an average location and a collection of 384 386 offsets. These objects must be described by a distance and a proper 385 387 motion vector. The PnA Database must be able to find and associate 386 388 detections of objects for which either of the parallax or the proper 387 motion are substantial. 389 motion are substantial. 388 390 389 391 Fourth, many detections, especially in their initial states, will not … … 664 666 \subsubsection{Analysis Stages} 665 667 668 \paragraph{Overview} 669 666 670 We now consider the collection of analysis tasks which are performed 667 671 by the IPP. Depending on the task, they may be performed on … … 670 674 can be performed in parallel because, for example, the analysis of an 671 675 OTA in one image does not depend on the results from another OTA. We 672 define the analysis pipelines to be the largest complete analysis task673 which may be performed on a single data item. {\bf drop the word 674 'pipeline' and use something else?}. The data analysis pipelines are 675 divided into three categories, and furthersubdivided as follows:676 define the term 'analysis stage' to refer to the largest complete 677 analysis task which may be performed on a single data item. The 678 analysis stages are divided into three categories, and further 679 subdivided as follows: 676 680 677 681 \begin{enumerate} 678 \item Science Image Pipelines682 \item Science Image Analysis Stages 679 683 \begin{enumerate} 680 684 \item Phase 1 : image processing preparation … … 683 687 \item Phase 4 : image combination 684 688 \end{enumerate} 685 \item Calibration Image Pipelines689 \item Calibration Image Analysis Stages 686 690 \begin{enumerate} 687 691 \item Calibration 1 : basic master-detrend creation … … 689 693 \item Calibration 3 : Flat-field correction image Creation 690 694 \end{enumerate} 691 \item Reference Catalog Pipelines695 \item Reference Catalog Analysis Stages 692 696 \begin{enumerate} 693 697 \item Astrometry reference catalog generation … … 696 700 \end{enumerate} 697 701 698 Figure~\ref{ pipelines} shows the flow of data between the various IPP699 software systems and the different analysis tasks, each managed by the700 controller. The thick lines represent the flow of pixel data, the702 Figure~\ref{stages} shows the flow of data between the various IPP 703 software systems and the different analysis stages, each managed by 704 the Controller. The thick lines represent the flow of pixel data, the 701 705 thin lines represent the flow of metadata and object data, and the 702 grey lines represent the flow of commands. {\bfAll subsystem706 grey lines represent the flow of commands. \tbd{All subsystem 703 707 interactions, except that between the scheduler and controller, are in 704 708 the form of updates to and queries from the databases}. The hatched 705 709 systems represent external PanSTARRS systems (OATS, the Sky Server, 706 710 the SAIC Object Database, the Moving/Transient Object Pipeline, and 707 other Client Science Pipelines. 711 other Client Science Pipelines. 712 713 The individual analysis stages can be accessed as a UNIX command-line 714 program. Each command represents the action of the stage on a single 715 quantum of data. These analysis stages are built of lower-level 716 C-functions wrapped in a higher-level programming language, 717 \tbd{Python}. 718 719 \subparagraph{Science Image Pipelines} 720 721 The IPP science image pipelines perform analyses on the night-sky 722 science images to extract the science data from these images. These 723 consist of: Phase 0, the night preparation stage; Phase 1, the image 724 processing preparation stage; Phase 2, the image reduction stage; 725 Phase 3, the exposure analysis stage; and Phase 4, the image 726 combination stage. These pipelines must process the images in a 727 timely manner so that the incoming data stream will not overload the 728 IPS. The decision to execute a specific pipeline for a specific 729 dataset is made by the Scheduler, which sends the infomation to the 730 Controller. The Controller executes the pipeline for the data on an 731 appropriate machine and monitors the success or failure of the job. 732 733 \subparagraph{Calibration Image Pipelines} 734 735 The IPP Calibration Image Pipelines perform the tasks needed to 736 generate high-quality calibration images from the input image 737 dataset. These operations may be performed on whatever timescales are 738 appropriate and necessary to maintain the quality and relevance of the 739 calibration images. There are four distinct types of calibration 740 image pipelines: the basic detrend creation pipeline, the photometric 741 correction image creation pipeline, the fringe pattern generation 742 pipeline, and the sky foreground pattern generation pipeline. 743 744 \subparagraph{Reference Catalog Pipelines} 745 746 The IPP reference catalog pipelines use the data in the IPP Internal 747 Database and the IPP Object Database to determined improved 748 astrometric and photometric calibration references. 708 749 709 750 \begin{figure} 710 751 \begin{center} 711 \resizebox{8cm}{!}{\includegraphics{pics/ pipelines.ps}}712 \caption{ \label{ pipelines} IPP System Overview}752 \resizebox{8cm}{!}{\includegraphics{pics/stages.ps}} 753 \caption{ \label{stages} IPP System Overview} 713 754 \end{center} 714 755 \end{figure} 715 756 716 \paragraph{Phase 2 Concept} 757 \paragraph{Phase 1 : image processing preparation} 758 759 The Phase 1 analysis stage is performed on each science FPA to 760 calculate basic astrometric \tbd{and photometric} data needed by the 761 later stages. Phase 1 must use the static (pre-determined) telescope 762 distortion model, combined with the guide star pixel and celestial 763 coordinates, to determine the correct telescope bore-site, field 764 rotation and magnification. The astrometric accurate required from 765 this analysis stage is 2 arcsec across the field, sufficient to match 766 the vast majority of reference stars with their detections. 767 768 In some circumstances, science images may have no guide stars. This 769 may occur if the detectors are not run in OTA mode, especially for 770 short snapshot images. In such a circumstance, the Phase 1 stage must 771 perform extremely basic object detection, determining the detector 772 coordinates for stars which are not excessively saturated and which 773 are significantly above the background level. The threshold levels 774 for this object detection stage must be configurable. The object 775 extraction must be performed in less than 3 seconds. 776 777 In order for astrometry of an image to succeed, it is necessary that 778 approximate image coordinates be known. The Phase 1 analysis must be 779 able to succeed despite initial coordinate errors as large as 5 times 780 the field width. However, the search process must attempt the near 781 matches first in the assumption that the given coordinates are 782 accurate. 783 784 A table of the overlaps between the science image to be processed and 785 the static sky images must be constructed. This table will be used to 786 guide the processing of the static sky in Phase 4. The overlaps must 787 be generously calculated so that small errors in astrometry at Phase 1 788 will not cause any valid static sky / science image pairs to be 789 missed. It is acceptable for a small number of invalid overlaps to be 790 identified as these will be excluded in Phase 4. 791 792 It is not unusual that an image be obtained with invalid coordinates 793 or without any valid stars. For example, the telescope control system 794 may make an error an report the wrong time or coordinates. Or, the 795 image may be obtained in exceptionally poor conditions with no 796 detected stars. Phase 1 must fail gracefully in these conditions, 797 reporting an appropriate error. Such images must be identified for 798 possible human intervention, or future follow-up after metadata 799 repairs are made. 800 801 \paragraph{Phase 2 : image reduction} 717 802 718 803 Phase~2 processing within the Pan-STARRS image processing pipeline is 719 the de-trend stage, where the images from the detector are processed 720 to remove instrumental signatures. The following operations need to 721 occur within Phase~2 processing: 804 the detrend stage, where the images from the detector are processed to 805 remove instrumental signatures. In addition, basic object detection 806 is performed along with improved astrometric and photometric 807 calibration. The following operations need to occur within Phase~2 808 processing: 809 722 810 \begin{enumerate} 723 \item Convolve de -trend images with the OT kernel;724 \item Flag bad and saturated pixels ;725 \item Bias correction via overscan subtraction ;726 \item Trim object image to remove overscan and edges corrupted by OT ;727 \item Correct for non-linearity ;728 \item Flat-field correction ;729 \item Sky subtraction ;730 \item Identify CRs ;731 \item Find objects in the image ; and811 \item Convolve detrend images with the OT kernel, if available 812 \item Flag bad and saturated pixels 813 \item Bias correction via overscan subtraction 814 \item Trim object image to remove overscan and edges corrupted by OT 815 \item Correct for non-linearity 816 \item Flat-field correction 817 \item Sky subtraction 818 \item Identify CRs 819 \item Find objects in the image 732 820 \item Make postage stamps of bright objects. 733 821 \end{enumerate} 734 These operations are each explained below. 735 736 \paragraph{Convolve de-trend images with the OT kernel} 737 738 De-trend images must be convolved by the OT kernel, so that 739 they accurately represent the de-trend images appropriate for 740 the object images, which have been shifted using OT. 741 742 \paragraph{Flag bad and saturated pixels} 822 823 \subparagraph{Convolve detrend images with the OT kernel} 824 825 Detrend images must be convolved by the OT kernel, so that 826 they accurately represent the detrend images appropriate for 827 the object images, which have been shifted using OT. The detrend 828 images which must be convolved include: the flat-field and the 829 high-spatial-frequency fringe images. 830 831 \subparagraph{Flag bad and saturated pixels} 743 832 744 833 A static bad pixel mask needs to be used to identify pixels which are … … 750 839 Pixels saturated in the A/D converter should also be masked, and this 751 840 area should be grown by an additional pixel to mask excess charge 752 spillover. 753 754 \paragraph{Bias correction via overscan subtraction} 755 756 The overscan must be averaged (either in bulk, or individually by 757 rows) or fit with a polynomial, and the result subtracted from the 758 image. Overscan rows with a standard deviation which exceeds a 759 given threshold should be masked. 760 761 \paragraph{Trim object image} 841 spillover. 842 843 The bad pixel mask must be carried with the science images. Different 844 bits must be set to identify different reasons for masking the pixel. 845 846 \subparagraph{Bias correction via overscan subtraction} 847 848 The image bias must be subtracted. Since different detectors behave in 849 different ways, several options for modelling the bias must be 850 available. The bias must be measured from the image overscan region. 851 The bias subtraction method must be capable of applying a single 852 constant to the complete image, or to represent the bias as a function 853 which varies along the overscan. The function to be used must include 854 a spline or a chebychev polynomial derived from the data values along 855 the overscan. The values used to determine both the single constant 856 or the inputs to the spline and polynomial fits must be derived from 857 groups of pixels on the basis of one of several statistics, including 858 the sample and robust mean, median, and modes. In the case of a 859 single constant, all of the overscan pixel values are used in the 860 calculation of this statistic. In the case of the 1D functional 861 representation, the input values to the fit should represent the 862 coordinate along the overscan, with the statistic derived from the 863 pixel in the perpedicular direction at each location. Sigma-clipping 864 on the input data values must be an option. \tbd{accuracy of the bias 865 subtraction?} 866 867 \subparagraph{Trim object image} 762 868 763 869 The overscan must be trimmed from the object image, along with … … 765 871 operation. 766 872 767 \paragraph{Correct for non-linearity} 768 769 The object image (after bias correction) must be corrected for the 770 effects of non-linearity through a polynomial fit. 771 772 \paragraph{Flat-field correction} 873 \subparagraph{Correct for non-linearity} 874 875 The object image (after bias correction) must be optionally corrected 876 for the effects of non-linearity through a provided polynomial fit to 877 the pixel data values. \tbd{what IPP component produces the 878 non-linear correction function?} 879 880 \subparagraph{Flat-field correction} 773 881 774 882 The object image (after bias correction and non-linearity correction) 775 must be corrected for sensitivity differences as a function of position, 776 through dividing by a flat field image. 777 778 779 \paragraph{Sky subtraction} 780 781 The flux contribution of the sky (both continuum emission and the line 782 emission that causes fringing) must be subtracted from the 783 flat-fielded object image. 784 785 \paragraph{Identify CRs} 883 must be corrected for sensitivity variations as a function of 884 position, dividing by a flat-field image. The flat-field images must 885 be appropriately normalized (see section \ref{mkcal}. \tbd{what 886 component selects the appropriate flat-field image? scheduler or 887 flat-field module?} The flat-fielded image must have a consistent 888 photometric zero-point across the chip, and across the full FPA, to 889 within 0.2\%. 890 891 \subparagraph{Sky subtraction} 892 893 The flux contribution of the sky (from both continuum emission and the 894 line emission that causes fringing) must be subtracted from the 895 flat-fielded object image. 896 897 \subparagraph{Identify CRs} 786 898 787 899 CRs should be identified, if possible on the basis of their morphology … … 789 901 masked. The mask must be grown by an additional pixel. 790 902 791 \ paragraph{Find objects in the image}903 \subparagraph{Find objects in the image} 792 904 793 905 Objects on the flat-fielded object image must be found, and general 794 906 parameters, including the centre, magnitude and shape measured. 795 907 796 \paragraph{Postage Stamps} 908 \subparagraph{astrometry} 909 910 \tbd{per-OTA astrometry to improve per-OTA parameters} 911 912 \subparagraph{Postage Stamps} 797 913 798 914 Objects on the flat-fielded object image falling within a specified … … 800 916 accurate photometry and astrometry. 801 917 918 \paragraph{Phase 3} 919 920 The Phase 3 analysis stage works with the results from a complete FPA 921 obtained during Phase 2 to improve the photometric and astrometric 922 calibrations. 923 924 Phase 3 must use the objects detected in Phase 2, matched with an 925 appropriate reference catalog, to determine the image zero point and 926 zero-point variations across the field. If zero-point variations are 927 significant \tbd{level TBD}, the zero-point variations must be modeled 928 with an up-to 3rd order chebychev polynomial correction. The complete 929 FPA image must be categoriezed as photometric on the basis of the 930 zero-point consistency, the transparency compared with recent 931 long-term measurements in the filter, and with the external indicators 932 of photometricity. 933 934 Phase 3 must use the objects detected in Phase 2, matched with an 935 appropriate reference catalog, to determine improvements to the 936 astrometric solutions. The distortion model appropriate to this image 937 must be determined. The resulting astrometric accuracy must be 938 \tbd{50 mas? 10 mas?} 802 939 803 940 \paragraph{Phase 4 Concept} … … 806 943 the final stage of processing. It operates on each sky cell that has 807 944 overlapping imaging data from the exposure(s) being processed, and 808 produces the main output image data products of the pipeline --- the945 produces the main output image data products of the stage --- the 809 946 difference images and a deep static sky image --- along with the 810 947 associated catalogues of static and variable sources. … … 814 951 815 952 816 \ paragraph{Functionality}953 \subparagraph{Functionality} 817 954 818 955 Phase 4 must consist of the following elements: … … 841 978 842 979 843 \paragraph{Performance}844 845 980 \subparagraph{Timing} 846 981 … … 877 1012 to an error upstream in the processing). 878 1013 1014 \subsubsection{Calibration Stage 1} 1015 1016 The IPP must generate basic calibration images using the raw 1017 flat-field, bias and dark images obtained by the telescope as the 1018 input. The analysis of these images requires relatively simple 1019 stacking of the input set of images. Outlier rejection, both of 1020 complete input images as well as pixels within the input stack, must 1021 be performed. In addition, each type of image requires an appropriate 1022 normalization which may depend on the data levels in other detectors 1023 in the input set. Each of these calibration stages must be able to 1024 determine from the input stack if the relevant calibration image needs 1025 to be updated and perform an initial test to see which input images 1026 are consistent and valid. 1027 1028 \paragraph{bias images} 1029 1030 \paragraph{dark images} 1031 1032 \paragraph{flat-field images} 1033 1034 \subsubsection{Calibration Stage 2} 1035 1036 \paragraph{mask images} 1037 1038 \paragraph{fringe frames} 1039 1040 \paragraph{low-k sky models} 1041 1042 \subsubsection{Calibration Stage 3} 1043 1044 Flat-field correction frame 1045 1046 \subsubsection{Astrometry Reference Creation} 1047 1048 \subsubsection{Photometry Reference Creation} 879 1049 880 1050 \subsubsection{Modules} 1051 1052 In order to encapsulation functionality, the analysis stages are 1053 constructed of a sequence of steps. The analysis stages consist of a 1054 \tbd{python} script which executes a sequence of C-level functions. 1055 The C-level functions called by the \tbd{python} script are called 1056 {\em modules} and represent basic data analysis operations. 1057 1058 The required set of Pan-STARRS modules and their functionality is 1059 specfied in the document `Pan-STARRS Image Processing Pipeline Modules 1060 Supplementary Design Requirements' (PSDC-430-xxx), and details of 1061 specific apgorithms are specfied in the document `Pan-STARRS Image 1062 Processing Pipeline Algorithm Design Document' (PSDC-430-006). 881 1063 882 1064 \subsubsection{PanSTARRS IPP Library} … … 950 1132 \subsubsection{Overview} 951 1133 952 This document discusses the likely range of the Pan-STARRS Image953 P rocessing Pipeline (IPP) hardware requirements. The hardware954 requirements addressed in this documentconsist of:1134 This section discusses the Pan-STARRS Image Processing Pipeline (IPP) 1135 PS-1 hardware requirements. The hardware requirements addressed in 1136 this section consist of: 955 1137 956 1138 \begin{itemize} … … 967 1149 certain period, the need to store calibration images for a longer 968 1150 period, and the need to store the static sky images. Of the various 969 analysis pipelines, and depending on the data organization as 970 discussed below, Phase 2 and Phase 4 present the most significant 1151 analysis stages, Phase 2 and Phase 4 present the most significant 971 1152 demands in terms of data I/O throughput on the network. Phase 2 and 972 1153 Phase 4 also present the most significant CPU demands. In this … … 979 1160 980 1161 This document does not address the hardware requirements implied by 981 the Phase 0, 1, or 3 stages, nor the load required by the calibration 982 image creation stages. In the first instance, the operations are only 983 performed on the metadata and are extremely minimal both in terms of 984 data I/O and computation requirements. In the second case, the1162 Phase 1 or 3, nor the load required by the calibration or reference 1163 catalog creation stages. In the first instance, the operations are 1164 only performed on the metadata and are extremely minimal both in terms 1165 of data I/O and computation requirements. In the second case, the 985 1166 processing is less time critical than the per-image processing and is 986 performed only infrequently (once per night to once per week or 987 month). This document also does not address any hardware requirements 988 introduced by the metadata manipulation. The software implementation 989 for metadata storage (RDBMS, FITS tables, etc) will have a very large 990 impact and will be evaluated along with the needed hardware at a later 991 date. 992 993 \subsubsection{Scenarios} 994 995 We will address the various hardware requirements by referring to a 996 set of data processing and data organization scenarios. The actual 997 hardware requirements will depend on design decisions which are not 998 yet available. It is possible to define the data organization in ways 999 which will minimize the hardware requirements, but which will increase 1000 the software development effort. We will discuss both the worst-case 1001 data organization scenario, which does not require significant 1002 intelligence in the software systems, and the optimal data 1003 organization scenario, which will require the software to track the 1004 location of data products more carefully. In addition, this document 1005 will address the data requirements of the complete Pan-STARRS pipeline 1006 with 4 telescopes as well as the single-telescope Pan-STARRS-1 scenario 1007 based on the Design Reference Mission [REF]. 1167 performed only infrequently (once per night to once per week, month or 1168 year). \tbd{The software implementation for metadata storage (RDBMS, 1169 FITS tables, etc) will have a very large impact and will be evaluated 1170 along with the needed hardware at a later date.} 1171 1172 We will address the various hardware requirements by referring to an 1173 assumed data processing and data organization scenario. The 1174 organization of the data and certain aspects of the data processing 1175 scheme have very large implications for the hardware requirements. In 1176 this analysis, we assume that data types are chosen to minimize the 1177 data volume and that the data is organized to minimize the I/O 1178 bandwidth needs, as defined below. We address the data requirements 1179 of the single-telescope Pan-STARRS-1 scenario based on the Design 1180 Reference Mission \tbd{REF}. 1181 1182 \subsubsection{Data Organization} 1008 1183 1009 1184 The IPP hardware system must provide both data storage and … … 1028 1203 and static sky processing and storage nodes (mostly Phase 4). Also 1029 1204 shown are two switches used in this configuration; although it is 1030 currently possible to buy a single switch w hich would have a1031 sufficient number of GigE ports for both sections of the PS-1 system, 1032 such a two-switch organization may be needed for the full Pan-STARRS 1033 system. In such a case, the interswitch communication must also meet 1034 the required throughput needs. We discuss the hardware requirements 1035 in the assumption that such an organization will benecessary.1205 currently possible to buy a single switch with sufficient number of 1206 ports, this organization represents a minimal configuration for the 1207 PS-1 IPP hardware. In such a case, the interswitch communication must 1208 also meet the required throughput needs. We discuss the hardware 1209 requirements in the assumption that such an organization will be 1210 necessary. 1036 1211 1037 1212 The way in which the images are distributed among the storage and 1038 1213 compute nodes will largely determine the I/O bandwidth requirements. 1039 1214 For data bandwidth requirements calculations, it is necessary to make 1040 some assumptions about the data organization. For the purposes of 1041 this document, we explore two extreme-case options: 1042 \begin{itemize} 1043 \item Random Data Distribution - OTA \& Sky data is randomly 1044 distributed within the compute node of a given type (ie, OTA data is 1045 randomly distributed among the OTA compute nodes). 1046 \item Optimal Data Distribution - OTA \& Sky data is optimally 1047 distributed to compute OTA/Sky nodes (OTA processing is always on a 1048 machine with local OTA data). 1049 \end{itemize} 1215 some assumptions about the data organization. We make the assumption 1216 that the OTA data is optimally distributed to the OTA nodes such that 1217 the OTA processing is always on a machine with local OTA data. This 1218 implies that all OTA data from a specific OTA are targetted to a 1219 specific machine. (see below for discussion of data duplication). 1220 1050 1221 A second factor which will have a significant impact on the I/O 1051 1222 requirements is the image storage format for the processed and … … 1053 1224 format or 16 bit integer format with appropriate scaling. In the 1054 1225 former case, additional dynamic range is retained, while in the latter 1055 case, we reduce the data volume by a factor of 2. While some may 1056 argue that the higher dynamic range is necessary, arguments can be 1057 made that the 16 bit range is sufficient. (In particular, the 16 bit 1058 data provides a dynamic range far above the expected 1/1000 fractional 1059 accuracy of the flat-field images). A related question is the number 1060 of calibration images needed by the processing system. Since the 1061 complete analysis is not yet defined, this number is difficult to 1062 ascertain. However, we can make a range of assumptions which are 1063 reasonable. We therefore adopt two data volume scenarios to explore 1064 these possibilites: 1065 \begin{itemize} 1066 \item Standard Data Volume - 32 bit data for processed and calibration 1067 images, average of 7 calibration frames per image. 1068 \item Minimal Data Volume - 16 bit data for processed and calibration 1069 images, average of 4 calibration frames per image. 1070 \end{itemize} 1071 In the discussion that follows, we explore the hardware requirements 1072 implied by the collection of four combinations of these two sets of 1073 scenario options. 1074 1075 \begin{table} 1076 \begin{center} 1077 \caption{Hardware Throughput Tests \label{existing-hardware}} 1078 \begin{tabular}{lrrrr} 1079 \hline 1080 \hline 1081 Test & where \& when & model & result \\ 1082 \hline 1083 node I/O & CFHT 11/2002 & Intel 1000 Gigabit & 35 - 40 MB/s sustained \\ 1084 node I/O & CFHT 2/2004 & Intel 1000 Gigabit & 65 - 70 MB/s sustained \\ 1085 RAID write & CFHT 2/2004 & 3ware RAID cntl + IDE & 110 MB/s sustained \\ 1086 Switch Load & VeriTest & Cisco & 3 GB/s (for 32 ports) \\ 1087 \hline 1088 \end{tabular} 1089 \end{center} 1090 \end{table} 1091 1092 \subsubsection{Existing Hardware Throughput} 1093 1094 We have collected a few representative tests of various pieces of 1095 modern hardware to give a reference for the throughput capabilities. 1096 A number of hardware configurations have been tested at CFHT for the 1097 Elixir project, and we include here their recent reported hardware 1098 RAID-5 I/O speeds and GigE card speeds. We also have included data 1099 from VeriTest studies of Cisco switch throughput, commissioned by 1100 Cisco for a 32 port GigE switch. These tests are summarized in 1101 Table~\ref{existing-hardware}. 1226 case, we reduce the data volume by a factor of 2. Since the science 1227 requirements for PS-1 do not specify a need for dynamic range greater 1228 than 16 bits, we assume all images are stored as 16 bit data. 1229 1230 A third determining factor is the number of calibration images needed 1231 by the processing system. Since the complete analysis is not yet 1232 defined, this number is difficult to ascertain. However, we can make 1233 a reasonable guess at the total number for scaling purposes. We 1234 assume that each frame requires a total of 4 calibration frames on 1235 average 1102 1236 1103 1237 \begin{table}[b] … … 1107 1241 \hline 1108 1242 \hline 1109 & Standard / PS-4 1110 & Standard / PS-1 1111 & Minimal / PS-4 1112 & Minimal / PS-1 \\ 1113 \hline 1114 Raw data & 300 TB & 75 TB & 300 TB & 75 TB \\ 1115 static sky & 512 TB & 64 TB & 256 TB & 32 TB \\ 1116 calibration frames & 175 TB & 18 TB & 17 TB & 5 TB \\ 1117 metadata db & 2 TB & 2 TB & 0.2 TB & 0.2 TB \\ 1118 object db & 60 TB & 4 TB & 60 TB & 4 TB \\ 1119 \hline 1120 totals & 1050 TB & 163 TB & 633 TB & 116 TB \\ 1243 Raw data & 200 TB \\ 1244 static sky & 256 TB \\ 1245 calibration frames & 5 TB \\ 1246 metadata db & 0.3 TB \\ 1247 object db & 4 TB \\ 1248 \hline 1249 total & 116 TB \\ 1121 1250 \hline 1122 1251 \end{tabular} … … 1130 1259 calibration images, the metadata database, and the object database. 1131 1260 We discuss each of these data items and their impact on the data 1132 storage requirements for the IPP, and identify the impact of the 1133 minimal vs standard data storage requirements as well as the 1134 requirements specifically for PS-1. Table~\ref{storage} summarizes 1135 the data storage requirements in the different scenarios. 1261 storage requirements for the IPP for PS-1. Table~\ref{storage} 1262 summarizes the data storage requirements in the different scenarios. 1136 1263 1137 1264 \paragraph{Raw Data Storage} … … 1140 1267 science images and calibration images. The night-time science images 1141 1268 consist of 1Gpix per image, or 2GB in raw format. At nominal cadence, 1142 the 4 telescopes can obtain images at a sustained rate of 1 image per 1143 30 seconds per telescope for the entire night of 10 hours (36000 1144 minutes). A total of 100 calibration images per night would be a 1145 substantial overestimate of the typical expectation. Combining these 1146 numbers, we can expect to receive a total of 1300 image per telescope 1147 per night, 5200 image total, or 10.4 TB of data per night. The total 1148 data storage requirements for the raw data are governed by the number 1149 of nights' worth of data we are required to keep online. A reasonable 1150 number is one month to allow a full moon's cycle. Thus, for raw image 1151 storage, we require a total of 300 TB data storage. For PS-1, this 1152 number is simply scaled down by a factor of 4. The choice of the 1153 minimal data volume does not affect these numbers because the raw data 1154 is already stored with 16 bit pixels. ({\bf note: the PS-1 design 1155 reference may now require storage of the entire first year of data, 1156 calculated to be 200 TB}). 1269 the PS-1 telescope can obtain images at a sustained rate of 1 image 1270 per 30 seconds for the entire night of 10 hours (36000 seconds). A 1271 total of 100 calibration images per night would be a substantial 1272 overestimate of the typical expectation. Combining these numbers, we 1273 can expect to receive a total of 1300 images, or 2.6 TB of data per 1274 night. The total data storage requirements for the raw data are 1275 governed by the number of nights' worth of data we are required to 1276 keep online. \tbd{for the first year, we are required to keep all 1277 images from the PnA and IPV surveys. This amounts to a total of 200 1278 TB of data}. 1157 1279 1158 1280 \paragraph{Static Sky Data Storage} 1159 1281 1160 1282 The static sky is represented by images with 0.2 arcsec per pixel. 1161 There will be one summed image and one weight image for each of the 6 1162 filters, each stored in floating point format. At this resolution, 1163 there are 324 Mpix per square degree, and we will observe a potential 1164 total area of 30,000 square degrees. Allowing for 10\% overage for 1165 overlapping tiling, we require a total of 10.7 Gpix to cover the sky 1166 once, or a total of $\sim 512$ TB for the static sky images. In the 1167 minimal data volume scenario, this value is reduced by a factor of 2, 1168 while in PS-1, the reduction is a factor of roughly 8 because we only 1169 intend to store the static sky for the ecliptic plane survey and the 1170 small IPP verification program ({\bf note: this last point is no 1171 longer valid - the PS-1 static sky may require the entire 3pi}). 1283 There will be one summed image and one weight image for each of the 1284 \tbd{6} filters, each stored with 16 bits of resolution, for a total 1285 of 24 bytes per sky pixel. At this resolution, there are 324 Mpix per 1286 square degree, and we will observe a potential total area of 30,000 1287 square degrees. Allowing for 10\% overage for overlapping tiling, we 1288 require a total of 10.7 Tpix to cover the sky once, or a total of 1289 $\sim 256$ TB to maintain a single image of the static sky in all 6 1290 filters. 1172 1291 1173 1292 \paragraph{Calibration Frame Storage} … … 1176 1295 and mask images, along with one flat, one flat-correction, and 1177 1296 multiple sky/fringe library frames per filter. In fact, not all types 1178 are needed at all stages. For the standard data volume, we assume an1179 average of 7 calibration frames per image and filter. This results in 1180 a total of 42 master calibration image per telescope. If we intend to 1181 keep all master calibration frames for the project lifetime, and 1182 generate a new master on a weekly basis (a reasonable time-scale), 1183 then we can expect to require a total of 175 TB of calibration image 1184 by the end of the 5 year lifetime of the project. For the case of 1185 PS-1, the time period is only 2 years, and there is only 1 telescope, 1186 resulting in a factor of 10 reduction in the volume. For the minimal 1187 data case, we reduce the volume by another factor of 3.5. We alsonote1297 are needed at all stages. It is very likely that we will not require 1298 bias or dark images, and mask images may be represented by a single 1299 byte per pixel. Nonetheless, it is necessary for us to generate and 1300 store all master calibration frames at least until we prove that they 1301 are not needed. We assume a total of 21 calibration images are 1302 necessary (one flat, fringe, and sky per filter, along with a bias, 1303 dark, and mask). If we intend to keep all master calibration frames 1304 for the project lifetime, and generate a new master on a weekly basis 1305 (a reasonable time-scale), then we can expect to require a total of 5 1306 TB of calibration image by the end of the 2 years of PS-1. We note 1188 1307 that this is likely to be a drastic overestimate as we are unlikely to 1189 1308 need to regenerate all master calibration frames on a weekly … … 1197 1316 data. The environmental data consists of measurements on a regular 1198 1317 cadence, roughly 1 per minute, of a variety of parameters. We suggest 1199 an expected of 1kB per entry, for a total of 2.6 GB over the lifetime 1200 of the project. PS-1 will represent a smaller amount of data per 1201 minute, and also a factor of 2.5 fewer minutes. We suggest PS-1 may 1202 have a total environmental metadata set smaller by a factor of 5. The 1203 additional systems, such as the DIMM, SkyProbe, NIR Sky Camera, and 1204 the LRProbe will have higher data requirements, but should be 1205 considered as separate, self-contained systems. Their data products 1206 are distilled to a limited number of parameters per minute which are 1207 included in the 1kB given above. Furthermore, items such as 1318 an expected of 1kB per entry, for a total of 1 GB over the two-year 1319 term of PS-1. The additional systems, such as the DIMM, SkyProbe, NIR 1320 Sky Camera, and the LRProbe will have higher data requirements, but 1321 should be considered as separate, self-contained systems. Their data 1322 products are distilled to a limited number of parameters per minute 1323 which are included in the 1kB given above. Furthermore, items such as 1208 1324 guide-star history, if saved, will be saved with the image data and 1209 1325 represents only a small fraction of the total image data volume. Some … … 1213 1329 excluded from this analysis. 1214 1330 1215 The image metadata consists of values associated with the FPA ( 4), the1216 OTAs ( 240), and the Cells (15360). Aside from the guide star history,1331 The image metadata consists of values associated with the FPA (1), the 1332 OTAs (64), and the Cells (4096). Aside from the guide star history, 1217 1333 the total data requirements for each of these entries will be scaled 1218 1334 by the number of bytes required for the metadata from each data level. 1219 1335 Clearly, if the Cell entry is allowed to be large, it will dominate 1220 the total Metadata data volume. If we suggest an expected number of 1221 64 bytes per Cell, 256 B per OTA, and 1k per FPA, we find a total 1222 metadata volume per exposure of roughly 1 MB, completely dominated by 1223 the Cell metadata. With the exposure rates above, we find a total of 1224 metadata volume of 1.8 TB over the lifetime of the project. For PS-1, 1225 the total volume is reduced by a factor of 2.5 (for the shorter 1226 lifetime) and another factor of 4 (for the lone telescope). Neither 1227 data quantity is affected by the minimal vs standard data volume 1228 choice. 1336 the total Metadata data volume. We suggest an expected number of 64 1337 bytes per Cell, 256 B per OTA, and 1k per FPA, yielding a total 1338 metadata volume per exposure of roughly 0.3 MB, completely dominated 1339 by the Cell metadata. With the exposure rates above, we find a total 1340 of metadata volume of 0.3 TB over the two-year term of PS-1. 1229 1341 1230 1342 \paragraph{Object Database Storage} … … 1235 1347 of object detections) and the number of object parameters which are 1236 1348 measured. We can make very rough estimates that the total number of 1237 detections over the 5 year lifetime of the project may be in the 1238 vicinity of $5\times10^{11}$. We can conservatively estimate the 1239 number of bytes needed to represent each detection as 128 B, resulting 1240 in a total data storage for the object detections of 60 TB. However, 1241 this number depends strongly on the timescale for which the IPP is 1242 required to maintain all object detections, and may potentially be 1243 significantly reduced. For the case of PS-1, the total number of 1244 detections is likely to be reduced by a factor of 4 for the number of 1245 telescopes, and potentially another significant factor ($\sim 4?$) by 1246 limiting the depth of object detections. Again, the minimal data 1247 volume scenario is irrelevant to the object database volume. 1349 detections over the 2 year lifetime of the project may be in the 1350 vicinity of $10^{11}$. We can conservatively estimate the number of 1351 bytes needed to represent each detection as 128 B, resulting in a 1352 total data storage for the object detections of 12 TB. However, this 1353 number depends strongly on the timescale for which the IPP is required 1354 to maintain all object detections, and may potentially be 1355 significantly reduced. 1248 1356 1249 1357 \subsubsection{CPU Requirements} … … 1252 1360 because they must keep up with the image delivery rate of 1 per 30 1253 1361 seconds. We have performed benchmarks of a demonstration version for 1254 both the Phase 2 and Phase 4 analyses. 1362 both the Phase 2 and Phase 4 analyses. 1255 1363 1256 1364 For the Phase 2, a substantial fraction of the processing time is … … 1277 1385 full OTA, including the FFTs used for smoothing. We can therefore 1278 1386 assume a total of 50 GHz-sec per OTA for the Phase 2 processing. This 1279 converts to a total of 12 000 GHz-sec for a complete major frame.1387 converts to a total of 12800 GHz-sec for a complete major frame. 1280 1388 1281 1389 For Phase 4, the main computational tasks are combining the multiple … … 1288 1396 equivalent to 7800 GHz-sec for a major frame. 1289 1397 1290 For PS-1, the data processing will clearly require a smaller amount of 1291 computational resources because of the lower image rate. However, the 1292 total number of GHz-sec required for the complete analysis of 4 input 1293 images and the combination with the static sky will remain 1294 more-or-less the same. Some reduction in the load may be gained by 1295 reducing the complexity and depth of analysis for PS-1. Depending on 1296 the details and depth of the analysis, we may reduce the computational 1297 load by a factor of 2. 1398 For PS-1, the typical time for a major frame is $4 \times 30$ seconds. 1399 Some reduction in the load may be gained by reducing the complexity 1400 and depth of analysis for PS-1. Depending on the details and depth of 1401 the analysis, we may reduce the computational load by a factor of 2. 1298 1402 1299 1403 \begin{table} 1300 1404 \begin{center} 1301 \caption{Data Scenarios(MB per OTA or Sky-cell) \label{scenarios}}1405 \caption{Data I/O (MB per OTA or Sky-cell) \label{scenarios}} 1302 1406 \begin{tabular}{lrrrr} 1303 1407 \hline 1304 1408 \hline 1305 & Random / Standard & Random / Minimal & Optimal / Standard & Optimal / Minimal \\ 1306 \hline 1307 {\em Phase 2 input} & & & & \\ 1308 from summit & $2 \times 32$ MB & $2 \times 32$ MB & $2 \times 32$ MB & $2 \times 32$ MB \\ 1309 input image & 32 MB & 32 MB & {\bf 32 MB} & {\bf 32 MB} \\ 1310 calibration & $7 \times 64$ MB & $4 \times 32$ MB & {\bf 7 $\times$ 64 MB} & {\bf 4 $\times$ 32 MB} \\ 1311 mask image & 16 MB & 8 MB & {\bf 16 MB} & {\bf 8 MB} \\ 1312 \hline 1313 network I/O: & 560 MB & 232 MB & 64 MB & 64 MB \\ 1314 disk I/O: & (560 MB) & (232 MB) & 496 MB & 168 MB \\ 1315 & & & & \\ 1316 {\em Phase 2 output} & & & & \\ 1317 output image & 64 MB & 32 MB & {\bf 64 MB} & {\bf 32 MB} \\ 1318 output mask & 16 MB & 8 MB & {\bf 16 MB} & {\bf 8 MB} \\ 1319 image to P4 & $1.5 \times 4 \times 64$ MB & $1.5 \times 4 \times 32$ MB & $1.5 \times 4 \times 64$ MB & $1.5 \times 4 \times 32$ MB \\ 1320 mask to P4 & $1.5 \times 4 \times 16$ MB & $1.5 \times 4 \times 8$ MB & $1.5 \times 4 \times 16$ MB & $1.5 \times 4 \times 8$ MB \\ 1321 \hline 1322 network I/O: & 200 MB & 100 MB & 120 MB & 60 MB \\ 1323 disk I/O: & (80 MB) & (40 MB) & 80 MB & 40 MB \\ 1324 & & & & \\ 1325 {\em Phase 4} & & & & \\ 1326 input images & $1.5 \times 4 \times 64$ MB & $1.5 \times 4 \times 32$ MB & & \\ 1327 input masks & $1.5 \times 4 \times 16$ MB & $1.5 \times 4 \times 8$ MB & & \\ 1328 static sky & 64 MB & 64 MB & & \\ 1329 static weight & 64 MB & 32 MB & & \\ 1330 \hline 1331 input: & 608 MB & 336 MB & & \\ 1332 output: & 192 MB & 128 MB & & \\ 1409 {\em Phase 2 input} \\ 1410 from summit & $2 \times 32$ MB \\ 1411 input image & {\bf 32 MB} \\ 1412 calibration & {\bf 4 $\times$ 32 MB} \\ 1413 mask image & {\bf 8 MB} \\ 1414 \hline 1415 network I/O: & 64 MB \\ 1416 disk I/O: & 176 MB \\ 1417 & \\ 1418 {\em Phase 2 output} \\ 1419 output image & {\bf 32 MB} \\ 1420 output mask & {\bf 8 MB} \\ 1421 image to P4 & $1.5 \times 32$ MB \\ 1422 mask to P4 & $1.5 \times 8$ MB \\ 1423 \hline 1424 network I/O: & 60 MB \\ 1425 disk I/O: & 40 MB \\ 1426 & \\ 1427 {\em Phase 4} & \\ 1428 input images & $1.5 \times 4 \times 32$ MB \\ 1429 input masks & $1.5 \times 4 \times 8$ MB \\ 1430 static sky & 32 MB \\ 1431 static weight & 32 MB \\ 1432 \hline 1433 input: & 304 MB \\ 1434 output: & 96 MB \\ 1333 1435 \hline 1334 1436 \multicolumn{5}{l}{\em Bold-faced entries are access to local-disk} \\ … … 1342 1444 Data I/O per node is defined as the number of bytes per second passed 1343 1445 through the node's network adapter. The data throughput for each node 1344 depends strongly on the scenarios identified above. In this section, 1345 we identify the data which is passed between nodes for each of the 1346 different scenarios. Table~\ref{scenarios} lists the per-node data 1347 I/O for the four scenarios. 1348 1349 For PS-4, there are only 30 seconds of compute time allowed for each 1350 of the Phase 2 and Phase 4 analyses. We use the data I/O volumes and 1351 some assumptions about expected network and disk bandwidth to estimate 1352 the I/O and processing timeline for the four scenarios. From this 1353 analysis, we can judge the total CPU requirements in terms of GHz, not 1354 just GHz-sec. We have assumed that GigE network adapters are capable 1355 of delivering data at 50MB/sec sustained and that a disk RAID can 1356 deliver sustained 100 MB/sec reads and writes. These numbers are 1357 conservative estimates based on recent tests discussed above. Using 1446 depends strongly on the how the data is organized and processed. In 1447 this section, we identify the data which is passed between nodes for 1448 the two stages of the science analysis process. Table~\ref{scenarios} 1449 lists the per-node data I/O for the analysis stages. 1450 1451 For PS-1, there are 120 seconds of compute time allowed for each of 1452 the Phase 2 and Phase 4 analyses for the collection of four images 1453 which makes up a cannonical major frame. We use the data I/O volumes 1454 and some assumptions about expected network and disk bandwidth to 1455 estimate the I/O and processing timeline for the four scenarios. From 1456 this analysis, we can judge the total CPU requirements in terms of 1457 GHz, not just GHz-sec. We have assumed that GigE network adapters are 1458 capable of delivering data at 50MB/sec sustained and that a disk RAID 1459 can deliver sustained 100 MB/sec reads and writes. These numbers are 1460 conservative estimates based on recent tests discussed below. Using 1358 1461 these assumptions, Table~\ref{throughput} lists the time allocations 1359 for the complete set of scenarios for the case of PS-4. 1360 1361 \paragraph{Random / Standard Data Scenario} 1362 1363 In the Random Data Distribution scenario, there is a single CPU 1364 allocated to each OTA in the OTA farm and a single CPU for each Sky 1365 cell process. The OTA data are stored across random machines in the 1366 OTA farm, with the result that every Phase 2 processing requires 1367 network access to the data. For each science OTA image which is 1368 observed, each OTA node will read from the network a total of 560 MB 1369 (the 2 raw images for data storage and the 7 calibration frames, along 1370 with one mask and one raw input image) and write a total of 200 MB 1371 (one processed image and the mask along with the 1.5 processed images 1372 and masks for the Phase 4 analysis). Given the assumption of 50 MB/s 1373 from the network adapter, the total data volume implies an I/O period 1374 of 15.2 seconds. Note that the disk I/O is parallel with the network 1375 I/O and substantially underfills the disk bandwidth. 1376 1377 \paragraph{Random / Minimal Data Scenario} 1378 1379 In the Random-Minimal, there is a single CPU allocated to each OTA in 1380 the OTA farm and a single CPU for each Sky cell process, and the OTA 1381 data are stored across random machines in the OTA farm. However, the 1382 calibration and the processed science images are stored at 2 bytes per 1383 pixel, the mask is set at 4 bits per pixel, and only 4 calibration 1384 images are assumed. For each science OTA image which is observed, 1385 each OTA node will read from the network a total of 232 MB (the 2 raw 1386 images for data storage and the 4 calibration frames, along with one 1387 mask and one raw input image) and write a total of 100 MB (one 1388 processed image and the mask along with the 1.5 processed images for 1389 the Phase 4 analysis). Given the assumption of 50 MB/s from the 1390 network adapter, the total data volume implies an I/O period of 6.6 1391 seconds. Again, note that the disk I/O is parallel with the network 1392 I/O and substantially underfills the disk bandwidth. 1393 1394 \paragraph{Optimal / Standard Data Scenario} 1395 1396 In the Optimal Data Distribution scenario, there is a single CPU 1462 for the processing stages. 1463 1464 \paragraph{Phase 2 Node I/O Requirements} 1465 1466 In the assumed data distribution scenario, there is a single CPU 1397 1467 allocated to each OTA in the OTA farm and a single CPU for each Sky 1398 1468 cell process. In addition, all data for the specified OTA are stored … … 1400 1470 result that all Phase 2 I/O is made to a local disk. For each science 1401 1471 OTA image which is observed, each OTA node will read from the network 1402 a total of 2 raw images (one for the original image, one for the1403 backup copy) and write an average of roughly 1.5 processed images and 1404 masks to the Phase 4 machines for a total of 184 MB of network I/O. 1405 During the processing stage, the OTA node will read from disk a total 1406 of 496 MB (7 calibration frames at 64 MB each, one 16 MB mask, and one 1407 raw science image at 32 MB) and write a total of 80 MB (one processed1408 image at 64MB and one mask at 8 MB). Given the assumptions for the1472 a total of 2 raw images (one for the original image, one for a backup 1473 copy) and write an average of roughly 1.5 processed images and masks 1474 to the Phase 4 machines for a total of 124 MB of network I/O. During 1475 the processing stage, the OTA node will read from disk a total of 176 1476 MB (4 calibration frames at 32 MB each, one 16 MB mask, and one raw 1477 science image at 32 MB) and write a total of 40 MB (one processed 1478 image at 32 MB and one mask at 8 MB). Given the assumptions for the 1409 1479 network and disk bandwidths (50 MB/s and 100 MB/s respectively), the 1410 data volumes imply a total I/O period of 9.5seconds. In this1480 data volumes imply a total I/O period of 4.6 seconds. In this 1411 1481 instance, the network I/O is presumed to be sequential with the disk 1412 1482 I/O. 1413 1483 1414 \paragraph{Optimal / Minimal Data Scenario} 1415 1416 In the Optimal / Minimal Scenario, the minimal data sizes are used 1417 with the optimal data distribution scheme. In this case, we reduce 1418 the disk I/O volume to 168 read and 40 MB write, and the network 1419 traffic to 124 MB. Given the assumptions for the network and disk 1420 bandwidths, the data volumes imply a total I/O period of 4.6 seconds. 1421 Again, the network I/O is presumed to be sequential with the disk I/O. 1422 1423 \paragraph{Phase 4 Node I/O Requirements / Standard Data Volume} 1484 \paragraph{Phase 4 Node I/O Requirements} 1424 1485 1425 1486 Although it is easy to arrange the OTA data in such a way that the … … 1439 1500 maximum read overhead is 50\% (need to read a 10x10 set of cells for 1440 1501 an 8x8 input image). If the processing is performed on Static Sky 1441 segments equivalent in size to the OTAs, the input data is 608 MB (384 1442 MB of processed science image, 96 MB of mask images, 64 MB of static 1443 sky image and 64 MB of static sky weight map) while the output data is 1444 192 MB (static sky, weight map, and difference image, each 64 MB). 1445 Thus, we require a total of 800 MB network I/O. Given the network 1446 bandwidth, this implies an I/O period of 16 seconds for Phase 4. 1447 1448 \paragraph{Phase 4 Node I/O Requirements / Minimal Data Volume} 1449 1450 In the minimal data volume scenario, the Phase 4 analysis volume is 1451 significantly reduced. The total volume of input data is 336 MB (192 1452 MB of processed science image, 48 MB of input mask, 64 MB of static 1453 sky image and 32 MB of static sky weight map) while the output data is 1454 128 MB (64 MB static sky, 32 MB weight map, and 32 MB difference 1455 image). Thus, we require a total of 464 MB network I/O, which implies 1456 an I/O period of 9.3 seconds. 1502 segments equivalent in size to the OTAs, the total volume of input 1503 data per node is 304 MB (192 MB of processed science image, 48 MB of 1504 input mask, 32 MB of static sky image and 32 MB of static sky weight 1505 map) while the output data is 96 MB (32 MB static sky, 32 MB weight 1506 map, and 32 MB difference image). Thus, we require a total of 400 MB 1507 network I/O, which implies an I/O period of 8 seconds. 1457 1508 1458 1509 \begin{table} 1459 1510 \begin{center} 1460 \caption{Data Throughput for 4 Scenarios\label{throughput}}1511 \caption{Data Throughput \label{throughput}} 1461 1512 \begin{tabular}{lrrrr} 1462 1513 \hline 1463 1514 \hline 1464 & 1465 \multicolumn{1}{c}{Random / Standard} & 1466 \multicolumn{1}{c}{Random / Minimal} & 1467 \multicolumn{1}{c}{Optimal / Standard} & 1468 \multicolumn{1}{c}{Optimal / Minimal} \\ 1469 \hline 1470 Phase 2 per-node network I/O & 15.2 s & 6.6 s & 3.7 s & 2.5 s \\ 1471 Phase 2 per-node disk I/O (read) & (5.6 s) & (2.3 s) & 5.0 s & 1.7 s \\ 1472 Phase 2 per-node disk I/O (write) & (0.8 s) & (0.4 s) & 0.8 s & 0.4 s \\ 1473 Phase 2 CPU total & 14 s : 860 GHz & 23 s : 520 GHz & 20 s : 600 GHz & 25 s : 480 GHz \\ 1474 Phase 4 per-node I/O & 16 s & 9.3 s & & \\ 1475 Phase 4 CPU total & 14 s : 490 GHz & 20 s : 390 GHz & & \\ 1476 Phase 2 switch load & 6.1 GB/s & 2.7 GB/s & 1.5 GB/s & 1.0 GB/s \\ 1477 Phase 4 switch load & 0.8 GB/s & 0.5 GB/s & 0.8 GB/s & 0.5 GB/s \\ 1478 Phase 2 to Phase 4 switch load & 1.1 GB/s & 0.6 GB/s & 1.1 GB/s & 0.6 GB/s \\ 1479 Summit to Phase 2 switch load & 0.5 GB/s & 0.5 GB/s & 0.5 GB/s & 0.5 GB/s \\ 1515 Phase 2 per-node network I/O & 2.2 s \\ 1516 Phase 2 per-node disk I/O (read) & 1.3 s \\ 1517 Phase 2 per-node disk I/O (write) & 1.2 s \\ 1518 Phase 2 CPU total & 25 s : 128 GHz \\ 1519 Phase 4 per-node I/O & 8 s \\ 1520 Phase 4 CPU total & 112 s : 70 GHz \\ 1521 Phase 2 switch load & 264 MB/s \\ 1522 Phase 4 switch load & 215 MB/s \\ 1523 Phase 2 to Phase 4 switch load & 160 MB/s \\ 1524 Summit to Phase 2 switch load & 70 MB/s \\ 1480 1525 \hline 1481 1526 \end{tabular} … … 1486 1531 1487 1532 The switch I/O requirements are defined by the total number of bytes 1488 per second serviced by the two switches in the system. For the 1489 analysis of the Switch I/O requirements, the choice of data 1490 distribution again has a major impact. We again test the four 1491 scenarios discussed above: Random Data Distribution, Random / Minimal, 1492 Optimal Data Distribution, and Optimal / Minimal. 1493 1494 \paragraph{Random / Standard Data Scenario} 1495 1496 In the Random Data Distribution scenario, each OTA node needs to read 1497 a total of 560 MB from the network and write a total of 200 MB every 1498 30 seconds. With 240 OTA nodes, this corresponds to a total bandwidth 1499 of 6080 MB/sec, or 49 Gb/sec. Note that this includes the bandwidth 1500 needed to copy data from the summit and make two copies on the OTA 1501 machines, as well as the bandwidth to send the processed image 1502 portions to the Phase 4 machines. The Phase 4 processing adds an 1503 additional 320 MB of network I/O per Sky-Cell group, and there are 1504 roughly 60-70 Sky-cells per exposure set. Thus the Phase 4 processing 1505 adds an additional 750 MB/sec network bandwidth. In the architecture 1506 defined in Figure NN, the Sky nodes and the OTA nodes are each 1507 attached to separate switches. An additional bandwidth requirement is 1508 derived by the need to exchange data between these switches in for 1509 Phase 4. The total amount of data exchanged between these switches is 1510 480 MB per Sky-cell, for a total bandwidth of 1120 MB/sec. In 1511 addition, the connection to the summit is a single, separate line 1512 which needs to support the bandwidth requirement of copying all intial 1513 raw images. In our simple model, each raw image is copied twice, 1514 accounting for a total of 15360 MB every 30 seconds, or a bandwidth 1515 load of 512 MB/sec. (Note that this last is double the actual 1516 bandwidth requirement to the summit: a dedicated local circular buffer 1517 would reduce the need for the second copy to come directly from the 1518 summit.) 1519 1520 \paragraph{Random / Minimal Data Scenario} 1521 1522 In the Random / Minimal Scenario, the data volumes are significantly 1523 reduced. The total Phase 2 bandwidth contribution is 332 MB over 30 1524 seconds for 240 nodes (2656 MB/sec) and the residual Phase 4 bandwidth 1525 load is 224 MB per Sky cell over 30 seconds (522 MB/sec). The 1526 inter-switch communication is now 240 MB per sky cell over 30 seconds, 1527 or 560 MB/sec. 1528 1529 \paragraph{Optimal / Standard Data Scenario} 1530 1531 In the Optimal Data Distribution, the Phase 2 network bandwidth is 1532 reduced significantly to 184 MB per OTA node, for a total of 1533 1.5GB/sec, while the Phase 4 network bandwidth remains unchanged at 1534 750 MB/sec. The inter-switch communication also remains the same at 1535 1.12 GB/sec. 1536 1537 \paragraph{Optimal / Minimal Data Scenario} 1538 1539 In the Optimal / Minimal Scenario, the total Phase 2 network bandwidth 1540 drops to 124 MB per OTA node, for a total of 1.0GB/sec, while the 1541 Phase 4 network bandwidth is 552 MB/sec. The inter-switch 1542 communication remains the same as the Random/Minimal Scenario at 560 1543 MB/sec. 1544 1545 \begin{table}[t] 1533 per second serviced by the two switches in the system. 1534 1535 The Phase 2 network I/O is 124 MB per OTA. With 64 OTAs per image, 1536 and 30 seconds average between images, this implies a total of 264 1537 MB/s switch bandwidth. The Phase 4 network I/O is 400 MB per sky 1538 cell. With 64 cells and 120 seconds between major frames, this is an 1539 average switch bandwidth of 215 MB/s switch bandwidth. The total 1540 switch-to-switch load is 304 MB per OTA, with an average timescale of 1541 120 seconds. With 64 OTAs, this corresponds to 160 MB/s. The 1542 summit-to-Phase 2 switch load is 70 MB/s. 1543 1544 \begin{table} 1546 1545 \begin{center} 1547 \caption{ \label{NP2} Phase 2 load per major frame (12000 GHz-sec)}1546 \caption{Hardware Throughput Tests \label{existing-hardware}} 1548 1547 \begin{tabular}{lrrrr} 1549 1548 \hline 1550 1549 \hline 1551 & Random/Standard 1552 & Random/Minimal 1553 & Optimal/Standard 1554 & Optimal/Minimal \\ 1555 \hline 1556 network I/O (GB) & 182 & 80 & 44 & 30 \\ 1557 PS-1 & & & & \\ 1558 I/O (cpu-sec) & 3640 & 1600 & 880 & 600 \\ 1559 CPU (cpu-sec) & 4000 & 4000 & 4000 & 4000 \\ 1560 \# cpus & 64 & 47 & 41 & 38 \\ 1561 PS-4 & & & & \\ 1562 I/O (cpu-sec) & 1820 & 800 & 440 & 300 \\ 1563 CPU (cpu-sec) & 2000 & 2000 & 2000 & 2000 \\ 1564 \# cpus & 127 & 93 & 81 & 77 \\ 1550 Test & where \& when & model & result \\ 1551 \hline 1552 node I/O & CFHT 11/2002 & Intel 1000 Gigabit & 35 - 40 MB/s sustained \\ 1553 node I/O & CFHT 2/2004 & Intel 1000 Gigabit & 65 - 70 MB/s sustained \\ 1554 RAID write & CFHT 2/2004 & 3ware RAID cntl + IDE & 110 MB/s sustained \\ 1555 Switch Load & VeriTest & Cisco & 3 GB/s (for 32 ports) \\ 1565 1556 \hline 1566 1557 \end{tabular} … … 1568 1559 \end{table} 1569 1560 1570 \begin{table}[b] 1571 \begin{center} 1572 \caption{\label{NP4} Phase 4 load per major frame (7800 GHz-sec)} 1573 \begin{tabular}{lrr} 1574 \hline 1575 \hline 1576 & Standard 1577 & Minimal \\ 1578 \hline 1579 network I/O (GB) & 48 & 28 \\ 1580 PS-1 & & \\ 1581 I/O (cpu-sec) & 960 & 557 \\ 1582 CPU (cpu-sec) & 2600 & 2600 \\ 1583 \# cpus & 30 & 26 \\ 1584 PS-4 & & \\ 1585 I/O (cpu-sec) & 480 & 278 \\ 1586 CPU (cpu-sec) & 1300 & 1300 \\ 1587 \# cpus & 59 & 53 \\ 1588 \hline 1589 \end{tabular} 1590 \end{center} 1591 \end{table} 1592 1593 \subsubsection{Conclusions} 1594 1595 Table~\ref{throughput} presents one way of analysing the hardware 1596 requirements, making a specific set of assumptions about the number of 1597 nodes for the two phases and the expected network and disk 1598 bandwidths. The important conclusion in this analysis is the implied 1599 number of GHz per processor, given the assumptions laid out. 1600 Phase 2 is specified to have 240 OTA nodes, while Phase 4 is specified 1601 to have roughly 60 static sky nodes. The range of Phase 2 CPU 1602 requirements implies that each CPU needs to have speeds in the range 1603 of 2.0 - 3.6 GHz, which sound very plausible for the year 2007, since 1604 these apply to PS-4. 1605 1606 Another way to represent this information is to use the total number 1607 of MB I/O and the total number of GHz-sec required for the two stages, 1608 confront these with an assumption for the bandwidth per network 1609 adapter and an assumption for the CPU speed and use those numbers to 1610 calculate the minimum number of nodes (CPUs) needed to sustain the 1611 timing requirements. There are quite a few parameters and options to 1612 choose from. We have assumed that for PS-1, the time between major 1613 frames (4 images combined in Phase 4) is 120 seconds, and 30 seconds 1614 for PS-4. We have also assumed that each CPU has one network adapter 1615 associated with it, and use the numbers of 50 MB/sec for PS-1 era 1616 network adapters and 100 MB/sec for the PS-4 network adapters (since 1617 there has been some steady improvement in GigE hardware over the past 1618 year). We have also assumed each PS-1 CPU is rated at 3 GHz and those 1619 for PS-4 are rated at 6 GHz (somewhat conservative since 3 GHz 1620 machines are already available). Tables~\ref{NP2} and \ref{NP4} show 1621 the load and resulting number of nodes for both Phase 2 and Phase 4 1622 for both the PS-1 and PS-4 assumptions, using the I/O numbers for all 1623 of the scenarios above. Note that in these discussions, we make the 1624 idealized assumption that the computational and I/O portions of each 1625 process are completely serial. As a result, the CPU is completely 1626 used to perform the I/O during the I/O phase, avoiding any concern 1627 about I/O load on the processor during analysis. 1561 \subsubsection{Existing Hardware Throughput} 1562 1563 We have collected a few representative tests of various pieces of 1564 modern hardware to give a reference for the throughput capabilities. 1565 A number of hardware configurations have been tested at CFHT for the 1566 Elixir project, and we include here their recent reported hardware 1567 RAID-5 I/O speeds and GigE card speeds. We also have included data 1568 from VeriTest studies of Cisco switch throughput, commissioned by 1569 Cisco for a 32 port GigE switch. These tests are summarized in 1570 Table~\ref{existing-hardware}. 1628 1571 1629 1572 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Note:
See TracChangeset
for help on using the changeset viewer.
