Hi,
Can someone please review my SOP for PhD:
Brief Statistics: pages-2, paragraphs - 10, words - 961 , lines - 75
<<SOP - START>>
Abbreviations: A - a, I - i, P - p, U - u
Objective: The present proliferation of Multi-core Architectures will bring about a significant impact in the art of programming. My profound interest in C++ gave me an early insight in the importance of concurrent programming on multi-core architectures. This occurred while reading a seemingly regular and now regarded a famous article by Herb Sutter: "The Free Lunch Is over: a Fundamental Turn toward Concurrency in Software". Little did I know then, that this, would give me a research direction. My goal is to improve existing and create new, efficient concurrent data structures/algorithms and task scheduling mechanisms for multi-core architectures subjected to ubiquitous challenges in multi-core and embedded systems: heterogeneity, concurrency, memory hierarchy, power constraints and hard/soft-real time constraints.
Motivation: My interest in algorithms and data structures is the culmination of experiences in variety of areas which range from mathematics, embedded systems, master thesis to teaching and work experience
Mathematics: I have always had a strong mathematical inclination & ability to solve problems. Algorithms and Data structures are centered on reorganizing such problems so that they can be efficiently solved using computing power. To me it was simply an extension of problem solving in mathematics to problem solving in computer science and so, I naturally found immediate interest in it.
Embedded Systems: Yet another source of my motivation is close observation of problems in Embedded Systems which suggests that most of them are inherently algorithmic in nature be it related to VLSI Design, Verification, System Modeling, Hardware/Software Power Optimization, Real Time Scheduling, Hardware/Software Co-design, Reconfigurable Computing, Network on Chips, or Algorithms in DSP and Wireless Communication. Simulation & Optimization also play a big role in design and analysis of such systems. Further, the time-to market pressure has pushed the industry in raising abstraction level to System Level and so Hardware-Software must be designed concurrently. In this respect, accelerating optimization, simulation and system level design are most important challenges. All these aspects indicate the growing importance of the need to design efficient concurrent algorithms and data structures. My Master of Science at A has given me firm grounding on hardware and software subjects. Also, I have accrued knowledge, skills and experience which can be used to solve cross-disciplinary problems, which I think is vital in the present many-core computing scenario.
Master Thesis: To further fulfill my interest and curiosity in this area, I have been working with Dr. XYZ at P on my thesis, titled "T". To delve deep into understanding graph theory and algorithms, I took a pre-course on Algorithms & Data Structures under Prof. LMN at U and simultaneously read literature on Graph Theory, Algorithms & Data Structures and Parallel Architectures/Algorithms. I have thoroughly learned the basic algorithms/data structures, complexity classes/analysis, graph theory/algorithms, parallel design-patterns and concurrent programming. I find graph theory, fascinating and challenging from both mathematical and algorithmic point of view. Working on my thesis has taught me to understand difference between theory and practice. Effective cache memory utilization, limited parallelism, memory bandwidth constraints, load balancing, data structure design (memory access patterns), choice of synchronization mechanisms and subtleties of target architecture are some of the aspects other than the algorithm, which have profound impact on performance and scalability. I have also come to appreciate the challenges in the industry of finding generic mechanisms and programming models for efficient parallelization of applications. I realized this, when I struggled with finding more efficient ways to parallelize sparse graph algorithms. Presently I am mainly exploring concurrent data structures, lock free mechanisms, modeling the effects of non-contiguous memory access on algorithm complexity/performance and reviewing state of the art in irregular sparse graph parallel algorithms.
Teaching Experience: I am also motivated by my good experiences with teaching, including teaching assistantship to teach Basic Mathematics course to Master of Science students at A. Presently, I am informally teaching Calculus & Discrete Mathematics course to a Bachelor of Science(Informatics) student at the university. The most interesting aspect of teaching this course is to get hands-on experience to make course content from scratch, deciding which topics needs more attention, choosing exercise sets carefully and understanding how to best present each topic. The overall experience is an intellectually rewarding task
Work Experience: My three years of professional experience at Perot Systems (now DELL Services) nurtured my analytical and problem solving skills. There, I learned software design & development, automation and platform independent computing as well as coordinating and working in teams. The more recent summer internship at I, U gave me hands-on opportunity to optimize algorithms & data structures for effective cache memory utilization and to understand effects of memory access patterns on performance.
Conclusions: The coming years will see a pervasiveness of multi-core architectures and embedded systems, meaning a paradigm shift from the traditional computing environments. To this end, problems in Computer Science can no longer be seen isolated only to desktop or server platforms. Multi-core systems will thrive in all computing environments and so, we need to see algorithms and data structures from a different perspective.
My long term career objective is to do research which has relevance from both theoretical and practical point of view. Interacting with members of the Department of Computer Science and Engineering at B University will give me an invaluable opportunity to broaden my horizons, and provide me insight in related research areas that I cannot anticipate at the moment. I look forward to continuing my research career as a PhD student. My decision to apply to B University has been motivated by all of these considerations.
<<SOP - END>>
Thanks
Can someone please review my SOP for PhD:
Brief Statistics: pages-2, paragraphs - 10, words - 961 , lines - 75
<<SOP - START>>
Abbreviations: A - a, I - i, P - p, U - u
Objective: The present proliferation of Multi-core Architectures will bring about a significant impact in the art of programming. My profound interest in C++ gave me an early insight in the importance of concurrent programming on multi-core architectures. This occurred while reading a seemingly regular and now regarded a famous article by Herb Sutter: "The Free Lunch Is over: a Fundamental Turn toward Concurrency in Software". Little did I know then, that this, would give me a research direction. My goal is to improve existing and create new, efficient concurrent data structures/algorithms and task scheduling mechanisms for multi-core architectures subjected to ubiquitous challenges in multi-core and embedded systems: heterogeneity, concurrency, memory hierarchy, power constraints and hard/soft-real time constraints.
Motivation: My interest in algorithms and data structures is the culmination of experiences in variety of areas which range from mathematics, embedded systems, master thesis to teaching and work experience
Mathematics: I have always had a strong mathematical inclination & ability to solve problems. Algorithms and Data structures are centered on reorganizing such problems so that they can be efficiently solved using computing power. To me it was simply an extension of problem solving in mathematics to problem solving in computer science and so, I naturally found immediate interest in it.
Embedded Systems: Yet another source of my motivation is close observation of problems in Embedded Systems which suggests that most of them are inherently algorithmic in nature be it related to VLSI Design, Verification, System Modeling, Hardware/Software Power Optimization, Real Time Scheduling, Hardware/Software Co-design, Reconfigurable Computing, Network on Chips, or Algorithms in DSP and Wireless Communication. Simulation & Optimization also play a big role in design and analysis of such systems. Further, the time-to market pressure has pushed the industry in raising abstraction level to System Level and so Hardware-Software must be designed concurrently. In this respect, accelerating optimization, simulation and system level design are most important challenges. All these aspects indicate the growing importance of the need to design efficient concurrent algorithms and data structures. My Master of Science at A has given me firm grounding on hardware and software subjects. Also, I have accrued knowledge, skills and experience which can be used to solve cross-disciplinary problems, which I think is vital in the present many-core computing scenario.
Master Thesis: To further fulfill my interest and curiosity in this area, I have been working with Dr. XYZ at P on my thesis, titled "T". To delve deep into understanding graph theory and algorithms, I took a pre-course on Algorithms & Data Structures under Prof. LMN at U and simultaneously read literature on Graph Theory, Algorithms & Data Structures and Parallel Architectures/Algorithms. I have thoroughly learned the basic algorithms/data structures, complexity classes/analysis, graph theory/algorithms, parallel design-patterns and concurrent programming. I find graph theory, fascinating and challenging from both mathematical and algorithmic point of view. Working on my thesis has taught me to understand difference between theory and practice. Effective cache memory utilization, limited parallelism, memory bandwidth constraints, load balancing, data structure design (memory access patterns), choice of synchronization mechanisms and subtleties of target architecture are some of the aspects other than the algorithm, which have profound impact on performance and scalability. I have also come to appreciate the challenges in the industry of finding generic mechanisms and programming models for efficient parallelization of applications. I realized this, when I struggled with finding more efficient ways to parallelize sparse graph algorithms. Presently I am mainly exploring concurrent data structures, lock free mechanisms, modeling the effects of non-contiguous memory access on algorithm complexity/performance and reviewing state of the art in irregular sparse graph parallel algorithms.
Teaching Experience: I am also motivated by my good experiences with teaching, including teaching assistantship to teach Basic Mathematics course to Master of Science students at A. Presently, I am informally teaching Calculus & Discrete Mathematics course to a Bachelor of Science(Informatics) student at the university. The most interesting aspect of teaching this course is to get hands-on experience to make course content from scratch, deciding which topics needs more attention, choosing exercise sets carefully and understanding how to best present each topic. The overall experience is an intellectually rewarding task
Work Experience: My three years of professional experience at Perot Systems (now DELL Services) nurtured my analytical and problem solving skills. There, I learned software design & development, automation and platform independent computing as well as coordinating and working in teams. The more recent summer internship at I, U gave me hands-on opportunity to optimize algorithms & data structures for effective cache memory utilization and to understand effects of memory access patterns on performance.
Conclusions: The coming years will see a pervasiveness of multi-core architectures and embedded systems, meaning a paradigm shift from the traditional computing environments. To this end, problems in Computer Science can no longer be seen isolated only to desktop or server platforms. Multi-core systems will thrive in all computing environments and so, we need to see algorithms and data structures from a different perspective.
My long term career objective is to do research which has relevance from both theoretical and practical point of view. Interacting with members of the Department of Computer Science and Engineering at B University will give me an invaluable opportunity to broaden my horizons, and provide me insight in related research areas that I cannot anticipate at the moment. I look forward to continuing my research career as a PhD student. My decision to apply to B University has been motivated by all of these considerations.
<<SOP - END>>
Thanks