├── ReadME.md
├── Week-1
├── .DS_Store
├── Quiz
│ ├── .DS_Store
│ ├── 1.png
│ ├── 10.png
│ ├── 2.png
│ ├── 3.png
│ ├── 4.png
│ ├── 5.png
│ ├── 6.png
│ ├── 7.png
│ ├── 8.png
│ └── 9.png
└── miniproject_1
│ ├── .classpath
│ ├── .idea
│ ├── compiler.xml
│ ├── encodings.xml
│ ├── libraries
│ │ ├── Maven__classworlds_classworlds_1_1.xml
│ │ ├── Maven__com_jcraft_jsch_0_1_27.xml
│ │ ├── Maven__commons_cli_commons_cli_1_0.xml
│ │ ├── Maven__jtidy_jtidy_4aug2000r7_dev.xml
│ │ ├── Maven__junit_junit_3_8_2.xml
│ │ ├── Maven__org_apache_maven_doxia_doxia_sink_api_1_0_alpha_7.xml
│ │ ├── Maven__org_apache_maven_maven_artifact_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_artifact_manager_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_core_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_error_diagnostics_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_model_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_monitor_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_api_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_descriptor_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_parameter_documenter_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_registry_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_profile_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_project_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_repository_metadata_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_settings_2_0_6.xml
│ │ ├── Maven__org_apache_maven_plugins_maven_resources_plugin_2_4_3.xml
│ │ ├── Maven__org_apache_maven_reporting_maven_reporting_api_2_0_6.xml
│ │ ├── Maven__org_apache_maven_shared_maven_filtering_1_0_beta_4.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_file_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_http_lightweight_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_http_shared_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_provider_api_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_ssh_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_ssh_common_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_ssh_external_1_0_beta_2.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_container_default_1_0_alpha_9_stable_1.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_interactivity_api_1_0_alpha_4.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_interpolation_1_13.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_utils_2_0_5.xml
│ │ ├── Maven__org_sonatype_plexus_plexus_build_api_0_0_4.xml
│ │ └── Maven__xml_apis_xml_apis_1_0_b2.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── workspace.xml
│ ├── .project
│ ├── .settings
│ ├── org.eclipse.core.resources.prefs
│ ├── org.eclipse.jdt.core.prefs
│ └── org.eclipse.m2e.core.prefs
│ ├── hamcrest-core-1.3.jar
│ ├── junit-4.12.jar
│ ├── miniproject_1.iml
│ ├── pcdp-core-0.0.4-SNAPSHOT.jar
│ ├── pom.xml
│ ├── src
│ ├── main
│ │ ├── java
│ │ │ └── edu
│ │ │ │ └── coursera
│ │ │ │ └── parallel
│ │ │ │ ├── ReciprocalArraySum.java
│ │ │ │ └── package-info.java
│ │ └── resources
│ │ │ └── checkstyle.xml
│ └── test
│ │ └── java
│ │ └── edu
│ │ └── coursera
│ │ └── parallel
│ │ └── ReciprocalArraySumTest.java
│ └── target
│ ├── classes
│ ├── checkstyle.xml
│ └── edu
│ │ └── coursera
│ │ └── parallel
│ │ ├── ReciprocalArraySum$ReciprocalArraySumTask.class
│ │ └── ReciprocalArraySum.class
│ ├── maven-status
│ └── maven-compiler-plugin
│ │ ├── compile
│ │ └── default-compile
│ │ │ ├── createdFiles.lst
│ │ │ └── inputFiles.lst
│ │ └── testCompile
│ │ └── default-testCompile
│ │ ├── createdFiles.lst
│ │ └── inputFiles.lst
│ ├── surefire-reports
│ ├── TEST-edu.coursera.parallel.ReciprocalArraySumTest.xml
│ └── edu.coursera.parallel.ReciprocalArraySumTest.txt
│ └── test-classes
│ └── edu
│ └── coursera
│ └── parallel
│ └── ReciprocalArraySumTest.class
├── Week-2
├── .DS_Store
├── Quiz
│ ├── .DS_Store
│ ├── 1.png
│ ├── 2.png
│ ├── 3.png
│ ├── 4.png
│ └── 5.png
└── miniproject_2
│ ├── .idea
│ ├── compiler.xml
│ ├── encodings.xml
│ ├── libraries
│ │ ├── Maven__classworlds_classworlds_1_1.xml
│ │ ├── Maven__com_jcraft_jsch_0_1_27.xml
│ │ ├── Maven__commons_cli_commons_cli_1_0.xml
│ │ ├── Maven__jtidy_jtidy_4aug2000r7_dev.xml
│ │ ├── Maven__junit_junit_3_8_2.xml
│ │ ├── Maven__org_apache_maven_doxia_doxia_sink_api_1_0_alpha_7.xml
│ │ ├── Maven__org_apache_maven_maven_artifact_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_artifact_manager_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_core_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_error_diagnostics_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_model_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_monitor_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_api_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_descriptor_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_parameter_documenter_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_registry_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_profile_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_project_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_repository_metadata_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_settings_2_0_6.xml
│ │ ├── Maven__org_apache_maven_plugins_maven_resources_plugin_2_4_3.xml
│ │ ├── Maven__org_apache_maven_reporting_maven_reporting_api_2_0_6.xml
│ │ ├── Maven__org_apache_maven_shared_maven_filtering_1_0_beta_4.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_file_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_http_lightweight_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_http_shared_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_provider_api_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_ssh_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_ssh_common_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_ssh_external_1_0_beta_2.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_container_default_1_0_alpha_9_stable_1.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_interactivity_api_1_0_alpha_4.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_interpolation_1_13.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_utils_2_0_5.xml
│ │ ├── Maven__org_sonatype_plexus_plexus_build_api_0_0_4.xml
│ │ └── Maven__xml_apis_xml_apis_1_0_b2.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── workspace.xml
│ ├── hamcrest-core-1.3.jar
│ ├── junit-4.12.jar
│ ├── miniproject_2.iml
│ ├── pcdp-core-0.0.4-SNAPSHOT.jar
│ ├── pom.xml
│ ├── src
│ ├── main
│ │ ├── java
│ │ │ └── edu
│ │ │ │ └── coursera
│ │ │ │ └── parallel
│ │ │ │ ├── Student.java
│ │ │ │ ├── StudentAnalytics.java
│ │ │ │ └── package-info.java
│ │ └── resources
│ │ │ └── checkstyle.xml
│ └── test
│ │ └── java
│ │ └── edu
│ │ └── coursera
│ │ └── parallel
│ │ └── StudentAnalyticsTest.java
│ └── target
│ ├── classes
│ ├── checkstyle.xml
│ └── edu
│ │ └── coursera
│ │ └── parallel
│ │ ├── Student.class
│ │ └── StudentAnalytics.class
│ ├── maven-status
│ └── maven-compiler-plugin
│ │ ├── compile
│ │ └── default-compile
│ │ │ ├── createdFiles.lst
│ │ │ └── inputFiles.lst
│ │ └── testCompile
│ │ └── default-testCompile
│ │ ├── createdFiles.lst
│ │ └── inputFiles.lst
│ ├── surefire-reports
│ ├── TEST-edu.coursera.parallel.StudentAnalyticsTest.xml
│ └── edu.coursera.parallel.StudentAnalyticsTest.txt
│ └── test-classes
│ └── edu
│ └── coursera
│ └── parallel
│ └── StudentAnalyticsTest.class
├── Week-3
├── .DS_Store
├── Quiz
│ ├── .DS_Store
│ ├── Screen Shot 2018-01-05 at 1.10.20 PM.png
│ ├── Screen Shot 2018-01-05 at 12.52.56 PM.png
│ ├── Screen Shot 2018-01-05 at 12.52.59 PM.png
│ ├── Screen Shot 2018-01-05 at 12.53.03 PM.png
│ ├── Screen Shot 2018-01-05 at 12.53.07 PM.png
│ ├── Screen Shot 2018-01-05 at 12.53.11 PM.png
│ └── Screen Shot 2018-01-05 at 12.53.15 PM.png
└── miniproject_3
│ ├── .idea
│ ├── compiler.xml
│ ├── encodings.xml
│ ├── libraries
│ │ ├── Maven__classworlds_classworlds_1_1.xml
│ │ ├── Maven__com_jcraft_jsch_0_1_27.xml
│ │ ├── Maven__commons_cli_commons_cli_1_0.xml
│ │ ├── Maven__edu_rice_pcdp_pcdp_core_0_0_4_SNAPSHOT.xml
│ │ ├── Maven__jtidy_jtidy_4aug2000r7_dev.xml
│ │ ├── Maven__junit_junit_3_8_2.xml
│ │ ├── Maven__org_apache_maven_doxia_doxia_sink_api_1_0_alpha_7.xml
│ │ ├── Maven__org_apache_maven_maven_artifact_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_artifact_manager_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_core_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_error_diagnostics_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_model_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_monitor_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_api_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_descriptor_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_parameter_documenter_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_plugin_registry_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_profile_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_project_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_repository_metadata_2_0_6.xml
│ │ ├── Maven__org_apache_maven_maven_settings_2_0_6.xml
│ │ ├── Maven__org_apache_maven_plugins_maven_resources_plugin_2_4_3.xml
│ │ ├── Maven__org_apache_maven_reporting_maven_reporting_api_2_0_6.xml
│ │ ├── Maven__org_apache_maven_shared_maven_filtering_1_0_beta_4.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_file_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_http_lightweight_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_http_shared_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_provider_api_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_ssh_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_ssh_common_1_0_beta_2.xml
│ │ ├── Maven__org_apache_maven_wagon_wagon_ssh_external_1_0_beta_2.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_container_default_1_0_alpha_9_stable_1.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_interactivity_api_1_0_alpha_4.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_interpolation_1_13.xml
│ │ ├── Maven__org_codehaus_plexus_plexus_utils_2_0_5.xml
│ │ ├── Maven__org_sonatype_plexus_plexus_build_api_0_0_4.xml
│ │ └── Maven__xml_apis_xml_apis_1_0_b2.xml
│ ├── misc.xml
│ ├── modules.xml
│ └── workspace.xml
│ ├── hamcrest-core-1.3.jar
│ ├── junit-4.12.jar
│ ├── miniproject_3.iml
│ ├── pcdp-core-0.0.4-SNAPSHOT.jar
│ ├── pom.xml
│ ├── src
│ ├── main
│ │ ├── java
│ │ │ └── edu
│ │ │ │ └── coursera
│ │ │ │ └── parallel
│ │ │ │ ├── MatrixMultiply.java
│ │ │ │ └── package-info.java
│ │ └── resources
│ │ │ └── checkstyle.xml
│ └── test
│ │ └── java
│ │ └── edu
│ │ └── coursera
│ │ └── parallel
│ │ └── MatrixMultiplyTest.java
│ └── target
│ ├── classes
│ ├── checkstyle.xml
│ └── edu
│ │ └── coursera
│ │ └── parallel
│ │ └── MatrixMultiply.class
│ ├── maven-status
│ └── maven-compiler-plugin
│ │ ├── compile
│ │ └── default-compile
│ │ │ ├── createdFiles.lst
│ │ │ └── inputFiles.lst
│ │ └── testCompile
│ │ └── default-testCompile
│ │ ├── createdFiles.lst
│ │ └── inputFiles.lst
│ ├── surefire-reports
│ ├── TEST-edu.coursera.parallel.MatrixMultiplyTest.xml
│ └── edu.coursera.parallel.MatrixMultiplyTest.txt
│ └── test-classes
│ └── edu
│ └── coursera
│ └── parallel
│ └── MatrixMultiplyTest.class
└── Week-4
├── .DS_Store
├── Quiz
├── .DS_Store
├── Screen Shot 2018-01-11 at 5.03.48 AM.png
├── Screen Shot 2018-01-11 at 5.04.51 AM.png
├── Screen Shot 2018-01-11 at 5.07.20 AM.png
├── Screen Shot 2018-01-11 at 5.19.32 AM.png
├── Screen Shot 2018-01-11 at 5.24.56 AM.png
├── Screen Shot 2018-01-11 at 5.25.02 AM.png
├── Screen Shot 2018-01-11 at 5.25.05 AM.png
├── Screen Shot 2018-01-11 at 5.25.33 AM.png
├── Screen Shot 2018-01-11 at 5.25.41 AM.png
└── Screen Shot 2018-01-11 at 5.25.50 AM.png
└── miniproject_4
├── .idea
├── compiler.xml
├── encodings.xml
├── libraries
│ ├── Maven__classworlds_classworlds_1_1.xml
│ ├── Maven__com_jcraft_jsch_0_1_27.xml
│ ├── Maven__commons_cli_commons_cli_1_0.xml
│ ├── Maven__jtidy_jtidy_4aug2000r7_dev.xml
│ ├── Maven__junit_junit_3_8_2.xml
│ ├── Maven__org_apache_maven_doxia_doxia_sink_api_1_0_alpha_7.xml
│ ├── Maven__org_apache_maven_maven_artifact_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_artifact_manager_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_core_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_error_diagnostics_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_model_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_monitor_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_plugin_api_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_plugin_descriptor_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_plugin_parameter_documenter_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_plugin_registry_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_profile_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_project_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_repository_metadata_2_0_6.xml
│ ├── Maven__org_apache_maven_maven_settings_2_0_6.xml
│ ├── Maven__org_apache_maven_plugins_maven_resources_plugin_2_4_3.xml
│ ├── Maven__org_apache_maven_reporting_maven_reporting_api_2_0_6.xml
│ ├── Maven__org_apache_maven_shared_maven_filtering_1_0_beta_4.xml
│ ├── Maven__org_apache_maven_wagon_wagon_file_1_0_beta_2.xml
│ ├── Maven__org_apache_maven_wagon_wagon_http_lightweight_1_0_beta_2.xml
│ ├── Maven__org_apache_maven_wagon_wagon_http_shared_1_0_beta_2.xml
│ ├── Maven__org_apache_maven_wagon_wagon_provider_api_1_0_beta_2.xml
│ ├── Maven__org_apache_maven_wagon_wagon_ssh_1_0_beta_2.xml
│ ├── Maven__org_apache_maven_wagon_wagon_ssh_common_1_0_beta_2.xml
│ ├── Maven__org_apache_maven_wagon_wagon_ssh_external_1_0_beta_2.xml
│ ├── Maven__org_codehaus_plexus_plexus_container_default_1_0_alpha_9_stable_1.xml
│ ├── Maven__org_codehaus_plexus_plexus_interactivity_api_1_0_alpha_4.xml
│ ├── Maven__org_codehaus_plexus_plexus_interpolation_1_13.xml
│ ├── Maven__org_codehaus_plexus_plexus_utils_2_0_5.xml
│ ├── Maven__org_sonatype_plexus_plexus_build_api_0_0_4.xml
│ └── Maven__xml_apis_xml_apis_1_0_b2.xml
├── misc.xml
├── modules.xml
└── workspace.xml
├── hamcrest-core-1.3.jar
├── junit-4.12.jar
├── miniproject_4.iml
├── pcdp-core-0.0.4-SNAPSHOT.jar
├── pom.xml
├── src
├── main
│ ├── java
│ │ └── edu
│ │ │ └── coursera
│ │ │ └── parallel
│ │ │ ├── OneDimAveragingPhaser.java
│ │ │ └── package-info.java
│ └── resources
│ │ └── checkstyle.xml
└── test
│ └── java
│ └── edu
│ └── coursera
│ └── parallel
│ └── OneDimAveragingPhaserTest.java
└── target
├── classes
├── checkstyle.xml
└── edu
│ └── coursera
│ └── parallel
│ └── OneDimAveragingPhaser.class
├── maven-status
└── maven-compiler-plugin
│ ├── compile
│ └── default-compile
│ │ ├── createdFiles.lst
│ │ └── inputFiles.lst
│ └── testCompile
│ └── default-testCompile
│ ├── createdFiles.lst
│ └── inputFiles.lst
└── test-classes
└── edu
└── coursera
└── parallel
└── OneDimAveragingPhaserTest.class
/ReadME.md:
--------------------------------------------------------------------------------
1 | ## Parallel Programming in JAVA Coursera
2 |
3 | [](http://hits.dwyl.com/techytoes/Parallel-Programming-Coursera)
4 |
5 | This repository contains all the assignments and Quizzes submitted by me.
6 |
7 | * #### ⭐️Star this repo if you find this helpful as a little token of appreciation for my work.
8 |
--------------------------------------------------------------------------------
/Week-1/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/.DS_Store
--------------------------------------------------------------------------------
/Week-1/Quiz/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/.DS_Store
--------------------------------------------------------------------------------
/Week-1/Quiz/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/1.png
--------------------------------------------------------------------------------
/Week-1/Quiz/10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/10.png
--------------------------------------------------------------------------------
/Week-1/Quiz/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/2.png
--------------------------------------------------------------------------------
/Week-1/Quiz/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/3.png
--------------------------------------------------------------------------------
/Week-1/Quiz/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/4.png
--------------------------------------------------------------------------------
/Week-1/Quiz/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/5.png
--------------------------------------------------------------------------------
/Week-1/Quiz/6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/6.png
--------------------------------------------------------------------------------
/Week-1/Quiz/7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/7.png
--------------------------------------------------------------------------------
/Week-1/Quiz/8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/8.png
--------------------------------------------------------------------------------
/Week-1/Quiz/9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/Quiz/9.png
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.classpath:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__classworlds_classworlds_1_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__com_jcraft_jsch_0_1_27.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__commons_cli_commons_cli_1_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__jtidy_jtidy_4aug2000r7_dev.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__junit_junit_3_8_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_doxia_doxia_sink_api_1_0_alpha_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_artifact_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_artifact_manager_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_core_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_error_diagnostics_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_model_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_monitor_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_plugin_api_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_plugin_descriptor_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_plugin_parameter_documenter_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_plugin_registry_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_profile_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_project_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_repository_metadata_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_maven_settings_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_plugins_maven_resources_plugin_2_4_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_reporting_maven_reporting_api_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_shared_maven_filtering_1_0_beta_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_wagon_wagon_file_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_wagon_wagon_http_lightweight_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_wagon_wagon_http_shared_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_wagon_wagon_provider_api_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_common_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_external_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_codehaus_plexus_plexus_container_default_1_0_alpha_9_stable_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_codehaus_plexus_plexus_interactivity_api_1_0_alpha_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_codehaus_plexus_plexus_interpolation_1_13.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_codehaus_plexus_plexus_utils_2_0_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__org_sonatype_plexus_plexus_build_api_0_0_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/libraries/Maven__xml_apis_xml_apis_1_0_b2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | miniproject_1
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.jdt.core.javabuilder
10 |
11 |
12 |
13 |
14 | org.eclipse.m2e.core.maven2Builder
15 |
16 |
17 |
18 |
19 |
20 | org.eclipse.jdt.core.javanature
21 | org.eclipse.m2e.core.maven2Nature
22 |
23 |
24 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.settings/org.eclipse.core.resources.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | encoding//src/main/java=UTF-8
3 | encoding//src/main/resources=UTF-8
4 | encoding//src/test/java=UTF-8
5 | encoding/=UTF-8
6 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.settings/org.eclipse.jdt.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
3 | org.eclipse.jdt.core.compiler.compliance=1.8
4 | org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
5 | org.eclipse.jdt.core.compiler.source=1.8
6 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/.settings/org.eclipse.m2e.core.prefs:
--------------------------------------------------------------------------------
1 | activeProfiles=
2 | eclipse.preferences.version=1
3 | resolveWorkspaceProjects=true
4 | version=1
5 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/hamcrest-core-1.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/miniproject_1/hamcrest-core-1.3.jar
--------------------------------------------------------------------------------
/Week-1/miniproject_1/junit-4.12.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/miniproject_1/junit-4.12.jar
--------------------------------------------------------------------------------
/Week-1/miniproject_1/miniproject_1.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/pcdp-core-0.0.4-SNAPSHOT.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/miniproject_1/pcdp-core-0.0.4-SNAPSHOT.jar
--------------------------------------------------------------------------------
/Week-1/miniproject_1/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | 4.0.0
5 | edu.coursera.parallel
6 | miniproject_1
7 | jar
8 | 0.0
9 | miniproject_1
10 |
11 |
12 | UTF-8
13 |
14 |
15 |
16 |
17 | org.apache.maven.plugins
18 | maven-resources-plugin
19 | 2.4.3
20 |
21 |
22 | junit
23 | junit
24 | 3.8.2
25 | test
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 | org.apache.maven.plugins
35 | maven-compiler-plugin
36 | 3.1
37 |
38 | 1.8
39 | 1.8
40 |
41 |
42 |
43 |
44 | org.apache.maven.plugins
45 | maven-dependency-plugin
46 | 2.9
47 |
48 |
49 |
50 | properties
51 |
52 |
53 |
54 |
55 |
56 |
57 | org.apache.maven.plugins
58 | maven-surefire-plugin
59 | 2.17
60 |
61 | pertest
62 | -Xmx4g
63 | true
64 | true
65 |
66 |
67 |
68 | org.apache.maven.plugins
69 | maven-checkstyle-plugin
70 | 2.17
71 |
72 |
73 | checkstyle
74 | validate
75 |
76 | ${basedir}/src/main/resources/checkstyle.xml
77 | UTF-8
78 | true
79 | true
80 | true
81 |
82 |
83 | check
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/src/main/java/edu/coursera/parallel/package-info.java:
--------------------------------------------------------------------------------
1 | /**
2 | * Source code from the Java Parallel Programming Coursera course.
3 | */
4 | package edu.coursera.parallel;
5 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/target/classes/edu/coursera/parallel/ReciprocalArraySum$ReciprocalArraySumTask.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/miniproject_1/target/classes/edu/coursera/parallel/ReciprocalArraySum$ReciprocalArraySumTask.class
--------------------------------------------------------------------------------
/Week-1/miniproject_1/target/classes/edu/coursera/parallel/ReciprocalArraySum.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/miniproject_1/target/classes/edu/coursera/parallel/ReciprocalArraySum.class
--------------------------------------------------------------------------------
/Week-1/miniproject_1/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst:
--------------------------------------------------------------------------------
1 | edu/coursera/parallel/ReciprocalArraySum$ReciprocalArraySumTask.class
2 | edu/coursera/parallel/ReciprocalArraySum.class
3 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst:
--------------------------------------------------------------------------------
1 | /Users/rupeshharode/Downloads/miniproject_1/src/main/java/edu/coursera/parallel/ReciprocalArraySum.java
2 | /Users/rupeshharode/Downloads/miniproject_1/src/main/java/edu/coursera/parallel/package-info.java
3 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst:
--------------------------------------------------------------------------------
1 | edu/coursera/parallel/ReciprocalArraySumTest.class
2 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst:
--------------------------------------------------------------------------------
1 | /Users/rupeshharode/Downloads/miniproject_1/src/test/java/edu/coursera/parallel/ReciprocalArraySumTest.java
2 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/target/surefire-reports/edu.coursera.parallel.ReciprocalArraySumTest.txt:
--------------------------------------------------------------------------------
1 | -------------------------------------------------------------------------------
2 | Test set: edu.coursera.parallel.ReciprocalArraySumTest
3 | -------------------------------------------------------------------------------
4 | Tests run: 4, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 83.727 sec <<< FAILURE! - in edu.coursera.parallel.ReciprocalArraySumTest
5 | testParManyTaskTwoMillion(edu.coursera.parallel.ReciprocalArraySumTest) Time elapsed: 0.517 sec <<< FAILURE!
6 | junit.framework.AssertionFailedError: It was expected that the many-task parallel implementation would run at least 2.400000x faster, but it only achieved 2.000000x speedup
7 | at junit.framework.Assert.fail(Assert.java:47)
8 | at junit.framework.Assert.assertTrue(Assert.java:20)
9 | at edu.coursera.parallel.ReciprocalArraySumTest.testParManyTaskTwoMillion(ReciprocalArraySumTest.java:143)
10 |
11 | testParManyTaskTwoHundredMillion(edu.coursera.parallel.ReciprocalArraySumTest) Time elapsed: 41.123 sec <<< FAILURE!
12 | junit.framework.AssertionFailedError: It was expected that the many-task parallel implementation would run at least 3.200000x faster, but it only achieved 2.025126x speedup
13 | at junit.framework.Assert.fail(Assert.java:47)
14 | at junit.framework.Assert.assertTrue(Assert.java:20)
15 | at edu.coursera.parallel.ReciprocalArraySumTest.testParManyTaskTwoHundredMillion(ReciprocalArraySumTest.java:155)
16 |
17 |
--------------------------------------------------------------------------------
/Week-1/miniproject_1/target/test-classes/edu/coursera/parallel/ReciprocalArraySumTest.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-1/miniproject_1/target/test-classes/edu/coursera/parallel/ReciprocalArraySumTest.class
--------------------------------------------------------------------------------
/Week-2/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/.DS_Store
--------------------------------------------------------------------------------
/Week-2/Quiz/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/Quiz/.DS_Store
--------------------------------------------------------------------------------
/Week-2/Quiz/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/Quiz/1.png
--------------------------------------------------------------------------------
/Week-2/Quiz/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/Quiz/2.png
--------------------------------------------------------------------------------
/Week-2/Quiz/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/Quiz/3.png
--------------------------------------------------------------------------------
/Week-2/Quiz/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/Quiz/4.png
--------------------------------------------------------------------------------
/Week-2/Quiz/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/Quiz/5.png
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__classworlds_classworlds_1_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__com_jcraft_jsch_0_1_27.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__commons_cli_commons_cli_1_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__jtidy_jtidy_4aug2000r7_dev.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__junit_junit_3_8_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_doxia_doxia_sink_api_1_0_alpha_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_artifact_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_artifact_manager_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_core_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_error_diagnostics_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_model_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_monitor_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_plugin_api_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_plugin_descriptor_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_plugin_parameter_documenter_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_plugin_registry_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_profile_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_project_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_repository_metadata_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_maven_settings_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_plugins_maven_resources_plugin_2_4_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_reporting_maven_reporting_api_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_shared_maven_filtering_1_0_beta_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_wagon_wagon_file_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_wagon_wagon_http_lightweight_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_wagon_wagon_http_shared_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_wagon_wagon_provider_api_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_common_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_external_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_codehaus_plexus_plexus_container_default_1_0_alpha_9_stable_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_codehaus_plexus_plexus_interactivity_api_1_0_alpha_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_codehaus_plexus_plexus_interpolation_1_13.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_codehaus_plexus_plexus_utils_2_0_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__org_sonatype_plexus_plexus_build_api_0_0_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/libraries/Maven__xml_apis_xml_apis_1_0_b2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/hamcrest-core-1.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/miniproject_2/hamcrest-core-1.3.jar
--------------------------------------------------------------------------------
/Week-2/miniproject_2/junit-4.12.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/miniproject_2/junit-4.12.jar
--------------------------------------------------------------------------------
/Week-2/miniproject_2/miniproject_2.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/pcdp-core-0.0.4-SNAPSHOT.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/miniproject_2/pcdp-core-0.0.4-SNAPSHOT.jar
--------------------------------------------------------------------------------
/Week-2/miniproject_2/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | 4.0.0
5 | edu.coursera.parallel
6 | miniproject_2
7 | jar
8 | 0.0
9 | miniproject_2
10 |
11 |
12 | UTF-8
13 |
14 |
15 |
16 |
17 | org.apache.maven.plugins
18 | maven-resources-plugin
19 | 2.4.3
20 |
21 |
22 | junit
23 | junit
24 | 4.13.1
25 | test
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 | org.apache.maven.plugins
35 | maven-compiler-plugin
36 | 3.1
37 |
38 | 1.8
39 | 1.8
40 |
41 |
42 |
43 |
44 | org.apache.maven.plugins
45 | maven-dependency-plugin
46 | 2.9
47 |
48 |
49 |
50 | properties
51 |
52 |
53 |
54 |
55 |
56 |
57 | org.apache.maven.plugins
58 | maven-surefire-plugin
59 | 2.17
60 |
61 | pertest
62 | -Xmx4g
63 | true
64 | true
65 |
66 |
67 |
68 | org.apache.maven.plugins
69 | maven-checkstyle-plugin
70 | 2.17
71 |
72 |
73 | checkstyle
74 | validate
75 |
76 | ${basedir}/src/main/resources/checkstyle.xml
77 | UTF-8
78 | true
79 | true
80 | true
81 |
82 |
83 | check
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/src/main/java/edu/coursera/parallel/Student.java:
--------------------------------------------------------------------------------
1 | package edu.coursera.parallel;
2 |
3 | /**
4 | * A class representing a single student in a single class.
5 | */
6 | public final class Student {
7 | /**
8 | * First name of the student.
9 | */
10 | private final String firstName;
11 | /**
12 | * Surname of the student.
13 | */
14 | private final String lastName;
15 | /**
16 | * Age of the student.
17 | */
18 | private final double age;
19 | /**
20 | * Grade the student has received in the class so far.
21 | */
22 | private final int grade;
23 | /**
24 | * Whether the student is currently enrolled, or has already completed the
25 | * course.
26 | */
27 | private final boolean isCurrent;
28 |
29 | /**
30 | * Constructor.
31 | * @param setFirstName Student first name
32 | * @param setLastName Student last name
33 | * @param setAge Student age
34 | * @param setGrade Student grade in course
35 | * @param setIsCurrent Student currently enrolled?
36 | */
37 | public Student(final String setFirstName, final String setLastName,
38 | final double setAge, final int setGrade,
39 | final boolean setIsCurrent) {
40 | this.firstName = setFirstName;
41 | this.lastName = setLastName;
42 | this.age = setAge;
43 | this.grade = setGrade;
44 | this.isCurrent = setIsCurrent;
45 | }
46 |
47 | /**
48 | * Get the first name of this student.
49 | * @return The student's first name.
50 | */
51 | public String getFirstName() {
52 | return firstName;
53 | }
54 |
55 | /**
56 | * Get the last name of this student.
57 | * @return The student's last name.
58 | */
59 | public String getLastName() {
60 | return lastName;
61 | }
62 |
63 | /**
64 | * Get the age of this student.
65 | * @return The student's age.
66 | */
67 | public double getAge() {
68 | return age;
69 | }
70 |
71 | /**
72 | * Get the grade this student has achieved in this course so far.
73 | * @return The student's current grade.
74 | */
75 | public int getGrade() {
76 | return grade;
77 | }
78 |
79 | /**
80 | * Check if this student is active, or has taken the course in the past.
81 | * @return true if the student is currently enrolled, false otherwise
82 | */
83 | public boolean checkIsCurrent() {
84 | return isCurrent;
85 | }
86 | }
87 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/src/main/java/edu/coursera/parallel/package-info.java:
--------------------------------------------------------------------------------
1 | /**
2 | * Source code from the Java Parallel Programming Coursera course.
3 | */
4 | package edu.coursera.parallel;
5 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/target/classes/edu/coursera/parallel/Student.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/miniproject_2/target/classes/edu/coursera/parallel/Student.class
--------------------------------------------------------------------------------
/Week-2/miniproject_2/target/classes/edu/coursera/parallel/StudentAnalytics.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/miniproject_2/target/classes/edu/coursera/parallel/StudentAnalytics.class
--------------------------------------------------------------------------------
/Week-2/miniproject_2/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst:
--------------------------------------------------------------------------------
1 | edu/coursera/parallel/StudentAnalytics.class
2 | edu/coursera/parallel/Student.class
3 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst:
--------------------------------------------------------------------------------
1 | /Users/rupeshharode/Downloads/miniproject_2/src/main/java/edu/coursera/parallel/package-info.java
2 | /Users/rupeshharode/Downloads/miniproject_2/src/main/java/edu/coursera/parallel/StudentAnalytics.java
3 | /Users/rupeshharode/Downloads/miniproject_2/src/main/java/edu/coursera/parallel/Student.java
4 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst:
--------------------------------------------------------------------------------
1 | edu/coursera/parallel/StudentAnalyticsTest.class
2 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst:
--------------------------------------------------------------------------------
1 | /Users/rupeshharode/Downloads/miniproject_2/src/test/java/edu/coursera/parallel/StudentAnalyticsTest.java
2 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/target/surefire-reports/edu.coursera.parallel.StudentAnalyticsTest.txt:
--------------------------------------------------------------------------------
1 | -------------------------------------------------------------------------------
2 | Test set: edu.coursera.parallel.StudentAnalyticsTest
3 | -------------------------------------------------------------------------------
4 | Tests run: 6, Failures: 1, Errors: 2, Skipped: 0, Time elapsed: 6.165 sec <<< FAILURE! - in edu.coursera.parallel.StudentAnalyticsTest
5 | testMostCommonFirstNameOfInactiveStudents(edu.coursera.parallel.StudentAnalyticsTest) Time elapsed: 1.079 sec <<< ERROR!
6 | java.lang.UnsupportedOperationException
7 | at edu.coursera.parallel.StudentAnalytics.mostCommonFirstNameOfInactiveStudentsParallelStream(StudentAnalytics.java:123)
8 | at edu.coursera.parallel.StudentAnalyticsTest.mostCommonFirstNameOfInactiveStudentsHelper(StudentAnalyticsTest.java:96)
9 | at edu.coursera.parallel.StudentAnalyticsTest.testMostCommonFirstNameOfInactiveStudents(StudentAnalyticsTest.java:112)
10 |
11 | testMostCommonFirstNameOfInactiveStudentsPerf(edu.coursera.parallel.StudentAnalyticsTest) Time elapsed: 2.367 sec <<< ERROR!
12 | java.lang.UnsupportedOperationException
13 | at edu.coursera.parallel.StudentAnalytics.mostCommonFirstNameOfInactiveStudentsParallelStream(StudentAnalytics.java:123)
14 | at edu.coursera.parallel.StudentAnalyticsTest.mostCommonFirstNameOfInactiveStudentsHelper(StudentAnalyticsTest.java:96)
15 | at edu.coursera.parallel.StudentAnalyticsTest.testMostCommonFirstNameOfInactiveStudentsPerf(StudentAnalyticsTest.java:120)
16 |
17 | testCountNumberOfFailedStudentsOlderThan20Perf(edu.coursera.parallel.StudentAnalyticsTest) Time elapsed: 0.917 sec <<< FAILURE!
18 | junit.framework.AssertionFailedError: Expected parallel version to run at least 1.2x faster but speedup was 0.6740088105726872
19 | at junit.framework.Assert.fail(Assert.java:47)
20 | at junit.framework.Assert.assertTrue(Assert.java:20)
21 | at edu.coursera.parallel.StudentAnalyticsTest.testCountNumberOfFailedStudentsOlderThan20Perf(StudentAnalyticsTest.java:165)
22 |
23 |
--------------------------------------------------------------------------------
/Week-2/miniproject_2/target/test-classes/edu/coursera/parallel/StudentAnalyticsTest.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-2/miniproject_2/target/test-classes/edu/coursera/parallel/StudentAnalyticsTest.class
--------------------------------------------------------------------------------
/Week-3/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/.DS_Store
--------------------------------------------------------------------------------
/Week-3/Quiz/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/Quiz/.DS_Store
--------------------------------------------------------------------------------
/Week-3/Quiz/Screen Shot 2018-01-05 at 1.10.20 PM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/Quiz/Screen Shot 2018-01-05 at 1.10.20 PM.png
--------------------------------------------------------------------------------
/Week-3/Quiz/Screen Shot 2018-01-05 at 12.52.56 PM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/Quiz/Screen Shot 2018-01-05 at 12.52.56 PM.png
--------------------------------------------------------------------------------
/Week-3/Quiz/Screen Shot 2018-01-05 at 12.52.59 PM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/Quiz/Screen Shot 2018-01-05 at 12.52.59 PM.png
--------------------------------------------------------------------------------
/Week-3/Quiz/Screen Shot 2018-01-05 at 12.53.03 PM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/Quiz/Screen Shot 2018-01-05 at 12.53.03 PM.png
--------------------------------------------------------------------------------
/Week-3/Quiz/Screen Shot 2018-01-05 at 12.53.07 PM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/Quiz/Screen Shot 2018-01-05 at 12.53.07 PM.png
--------------------------------------------------------------------------------
/Week-3/Quiz/Screen Shot 2018-01-05 at 12.53.11 PM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/Quiz/Screen Shot 2018-01-05 at 12.53.11 PM.png
--------------------------------------------------------------------------------
/Week-3/Quiz/Screen Shot 2018-01-05 at 12.53.15 PM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/Quiz/Screen Shot 2018-01-05 at 12.53.15 PM.png
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__classworlds_classworlds_1_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__com_jcraft_jsch_0_1_27.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__commons_cli_commons_cli_1_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__edu_rice_pcdp_pcdp_core_0_0_4_SNAPSHOT.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__jtidy_jtidy_4aug2000r7_dev.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__junit_junit_3_8_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_doxia_doxia_sink_api_1_0_alpha_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_artifact_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_artifact_manager_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_core_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_error_diagnostics_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_model_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_monitor_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_plugin_api_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_plugin_descriptor_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_plugin_parameter_documenter_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_plugin_registry_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_profile_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_project_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_repository_metadata_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_maven_settings_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_plugins_maven_resources_plugin_2_4_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_reporting_maven_reporting_api_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_shared_maven_filtering_1_0_beta_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_wagon_wagon_file_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_wagon_wagon_http_lightweight_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_wagon_wagon_http_shared_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_wagon_wagon_provider_api_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_common_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_external_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_codehaus_plexus_plexus_container_default_1_0_alpha_9_stable_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_codehaus_plexus_plexus_interactivity_api_1_0_alpha_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_codehaus_plexus_plexus_interpolation_1_13.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_codehaus_plexus_plexus_utils_2_0_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__org_sonatype_plexus_plexus_build_api_0_0_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/libraries/Maven__xml_apis_xml_apis_1_0_b2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/hamcrest-core-1.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/miniproject_3/hamcrest-core-1.3.jar
--------------------------------------------------------------------------------
/Week-3/miniproject_3/junit-4.12.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/miniproject_3/junit-4.12.jar
--------------------------------------------------------------------------------
/Week-3/miniproject_3/miniproject_3.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/pcdp-core-0.0.4-SNAPSHOT.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/miniproject_3/pcdp-core-0.0.4-SNAPSHOT.jar
--------------------------------------------------------------------------------
/Week-3/miniproject_3/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | 4.0.0
5 | edu.coursera.parallel
6 | miniproject_3
7 | jar
8 | 0.0
9 | miniproject_3
10 |
11 |
12 | 0.0.4-SNAPSHOT
13 | UTF-8
14 |
15 |
16 |
17 |
18 | pcdp-repo
19 | https://raw.github.com/habanero-maven/hjlib-maven-repo/mvn-repo-pcdp-${pcdp.version}/
20 |
21 | true
22 | always
23 |
24 |
25 |
26 |
27 |
28 |
29 | org.apache.maven.plugins
30 | maven-resources-plugin
31 | 2.4.3
32 |
33 |
34 | edu.rice.pcdp
35 | pcdp-core
36 | ${pcdp.version}
37 |
38 |
39 | junit
40 | junit
41 | 3.8.2
42 | test
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 | org.apache.maven.plugins
52 | maven-compiler-plugin
53 | 3.1
54 |
55 | 1.8
56 | 1.8
57 |
58 |
59 |
60 |
61 | org.apache.maven.plugins
62 | maven-dependency-plugin
63 | 2.9
64 |
65 |
66 |
67 | properties
68 |
69 |
70 |
71 |
72 |
73 |
74 | org.apache.maven.plugins
75 | maven-surefire-plugin
76 | 2.17
77 |
78 | pertest
79 | -Xmx4g
80 | true
81 | true
82 |
83 |
84 |
85 | org.apache.maven.plugins
86 | maven-checkstyle-plugin
87 | 2.17
88 |
89 |
90 | checkstyle
91 | validate
92 |
93 | ${basedir}/src/main/resources/checkstyle.xml
94 | UTF-8
95 | true
96 | true
97 | true
98 |
99 |
100 | check
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/src/main/java/edu/coursera/parallel/MatrixMultiply.java:
--------------------------------------------------------------------------------
1 | package edu.coursera.parallel;
2 |
3 | import static edu.rice.pcdp.PCDP.*;
4 |
5 | /**
6 | * Wrapper class for implementing matrix multiply efficiently in parallel.
7 | */
8 | public final class MatrixMultiply {
9 | /**
10 | * Default constructor.
11 | */
12 | private MatrixMultiply() {
13 | }
14 |
15 | /**
16 | * Perform a two-dimensional matrix multiply (A x B = C) sequentially.
17 | *
18 | * @param A An input matrix with dimensions NxN
19 | * @param B An input matrix with dimensions NxN
20 | * @param C The output matrix
21 | * @param N Size of each dimension of the input matrices
22 | */
23 | public static void seqMatrixMultiply(final double[][] A, final double[][] B,
24 | final double[][] C, final int N) {
25 | forseq2d(0, N - 1, 0, N - 1, (i, j) -> {
26 | C[i][j] = 0.0;
27 | for (int k = 0; k < N; k++) {
28 | C[i][j] += A[i][k] * B[k][j];
29 | }
30 | });
31 | }
32 |
33 | /**
34 | * Perform a two-dimensional matrix multiply (A x B = C) in parallel.
35 | *
36 | * @param A An input matrix with dimensions NxN
37 | * @param B An input matrix with dimensions NxN
38 | * @param C The output matrix
39 | * @param N Size of each dimension of the input matrices
40 | */
41 | public static void parMatrixMultiply(final double[][] A, final double[][] B,
42 | final double[][] C, final int N) {
43 | /*
44 | * TODO Parallelize this outermost two-dimension sequential loop to
45 | * achieve performance improvement.
46 | */
47 | forall2dChunked(0, N - 1, 0, N - 1, (i, j) ->
48 | {
49 | C[i][j] = 0.0;
50 | for (int k = 0; k < N; k++) {
51 | C[i][j] += A[i][k] * B[k][j];
52 | }
53 | });
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/src/main/java/edu/coursera/parallel/package-info.java:
--------------------------------------------------------------------------------
1 | /**
2 | * Source code from the Java Parallel Programming Coursera course.
3 | */
4 | package edu.coursera.parallel;
5 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/src/test/java/edu/coursera/parallel/MatrixMultiplyTest.java:
--------------------------------------------------------------------------------
1 | package edu.coursera.parallel;
2 |
3 | import java.util.Random;
4 |
5 | import junit.framework.TestCase;
6 |
7 | public class MatrixMultiplyTest extends TestCase {
8 | // Number of times to repeat each test, for consistent timing results.
9 | final static private int REPEATS = 20;
10 |
11 | private static int getNCores() {
12 | String ncoresStr = System.getenv("COURSERA_GRADER_NCORES");
13 | if (ncoresStr == null) {
14 | return Runtime.getRuntime().availableProcessors();
15 | } else {
16 | return Integer.parseInt(ncoresStr);
17 | }
18 | }
19 |
20 | /**
21 | * Create a double[] of length N to use as input for the tests.
22 | *
23 | * @param N Size of the array to create
24 | * @return Initialized double array of length N
25 | */
26 | private double[][] createMatrix(final int N) {
27 | final double[][] input = new double[N][N];
28 | final Random rand = new Random(314);
29 |
30 | for (int i = 0; i < N; i++) {
31 | for (int j = 0; j < N; j++) {
32 | input[i][j] = rand.nextInt(100);
33 | }
34 | }
35 |
36 | return input;
37 | }
38 |
39 | /**
40 | * Check if there is any difference in the correct and generated outputs.
41 | */
42 | private void checkResult(final double[][] ref, final double[][] output, final int N) {
43 | for (int i = 0; i < N; i++) {
44 | for (int j = 0; j < N; j++) {
45 | String msg = "Error detected on cell (" + i + ", " + j + ")";
46 | assertEquals(msg, ref[i][j], output[i][j]);
47 | }
48 | }
49 | }
50 |
51 | /**
52 | * A reference implementation of seqMatrixMultiply, in case the one in the main source file is accidentally
53 | * modified.
54 | */
55 | public void seqMatrixMultiply(final double[][] A, final double[][] B, final double[][] C, final int N) {
56 | for (int i = 0; i < N; i++) {
57 | for (int j = 0; j < N; j++) {
58 | C[i][j] = 0.0;
59 | for (int k = 0; k < N; k++) {
60 | C[i][j] += A[i][k] * B[k][j];
61 | }
62 | }
63 | }
64 | }
65 |
66 | /**
67 | * A helper function for tests of the two-task parallel implementation.
68 | *
69 | * @param N The size of the array to test
70 | * @return The speedup achieved, not all tests use this information
71 | */
72 | private double parTestHelper(final int N) {
73 | // Create a random input
74 | final double[][] A = createMatrix(N);
75 | final double[][] B = createMatrix(N);
76 | final double[][] C = new double[N][N];
77 | final double[][] refC = new double[N][N];
78 |
79 | // Use a reference sequential version to compute the correct result
80 | seqMatrixMultiply(A, B, refC, N);
81 |
82 | // Use the parallel implementation to compute the result
83 | MatrixMultiply.parMatrixMultiply(A, B, C, N);
84 |
85 | checkResult(refC, C, N);
86 |
87 | /*
88 | * Run several repeats of the sequential and parallel versions to get an accurate measurement of parallel
89 | * performance.
90 | */
91 | final long seqStartTime = System.currentTimeMillis();
92 | for (int r = 0; r < REPEATS; r++) {
93 | seqMatrixMultiply(A, B, C, N);
94 | }
95 | final long seqEndTime = System.currentTimeMillis();
96 |
97 | final long parStartTime = System.currentTimeMillis();
98 | for (int r = 0; r < REPEATS; r++) {
99 | MatrixMultiply.parMatrixMultiply(A, B, C, N);
100 | }
101 | final long parEndTime = System.currentTimeMillis();
102 |
103 | final long seqTime = (seqEndTime - seqStartTime) / REPEATS;
104 | final long parTime = (parEndTime - parStartTime) / REPEATS;
105 |
106 | return (double)seqTime / (double)parTime;
107 | }
108 |
109 | /**
110 | * Tests the performance of the parallel implementation on a 512x512 matrix.
111 | */
112 | public void testPar512_x_512() {
113 | final int ncores = getNCores();
114 | double speedup = parTestHelper(512);
115 | double minimalExpectedSpeedup = (double)ncores * 0.6;
116 | final String errMsg = String.format("It was expected that the parallel implementation would run at " +
117 | "least %fx faster, but it only achieved %fx speedup", minimalExpectedSpeedup, speedup);
118 | assertTrue(errMsg, speedup >= minimalExpectedSpeedup);
119 | }
120 |
121 | /**
122 | * Tests the performance of the parallel implementation on a 768x768 matrix.
123 | */
124 | public void testPar768_x_768() {
125 | final int ncores = getNCores();
126 | double speedup = parTestHelper(768);
127 | double minimalExpectedSpeedup = (double)ncores * 0.6;
128 | final String errMsg = String.format("It was expected that the parallel implementation would run at " +
129 | "least %fx faster, but it only achieved %fx speedup", minimalExpectedSpeedup, speedup);
130 | assertTrue(errMsg, speedup >= minimalExpectedSpeedup);
131 | }
132 | }
133 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/target/classes/edu/coursera/parallel/MatrixMultiply.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/miniproject_3/target/classes/edu/coursera/parallel/MatrixMultiply.class
--------------------------------------------------------------------------------
/Week-3/miniproject_3/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst:
--------------------------------------------------------------------------------
1 | edu/coursera/parallel/MatrixMultiply.class
2 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst:
--------------------------------------------------------------------------------
1 | /Users/rupeshharode/Downloads/miniproject_3/src/main/java/edu/coursera/parallel/MatrixMultiply.java
2 | /Users/rupeshharode/Downloads/miniproject_3/src/main/java/edu/coursera/parallel/package-info.java
3 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst:
--------------------------------------------------------------------------------
1 | edu/coursera/parallel/MatrixMultiplyTest.class
2 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst:
--------------------------------------------------------------------------------
1 | /Users/rupeshharode/Downloads/miniproject_3/src/test/java/edu/coursera/parallel/MatrixMultiplyTest.java
2 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/target/surefire-reports/TEST-edu.coursera.parallel.MatrixMultiplyTest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 | junit.framework.AssertionFailedError: It was expected that the parallel implementation would run at least 2.400000x faster, but it only achieved 1.790000x speedup
70 | at junit.framework.Assert.fail(Assert.java:47)
71 | at junit.framework.Assert.assertTrue(Assert.java:20)
72 | at edu.coursera.parallel.MatrixMultiplyTest.testPar512_x_512(MatrixMultiplyTest.java:118)
73 |
74 |
75 |
76 | junit.framework.AssertionFailedError: It was expected that the parallel implementation would run at least 2.400000x faster, but it only achieved 1.594697x speedup
77 | at junit.framework.Assert.fail(Assert.java:47)
78 | at junit.framework.Assert.assertTrue(Assert.java:20)
79 | at edu.coursera.parallel.MatrixMultiplyTest.testPar768_x_768(MatrixMultiplyTest.java:130)
80 |
81 |
82 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/target/surefire-reports/edu.coursera.parallel.MatrixMultiplyTest.txt:
--------------------------------------------------------------------------------
1 | -------------------------------------------------------------------------------
2 | Test set: edu.coursera.parallel.MatrixMultiplyTest
3 | -------------------------------------------------------------------------------
4 | Tests run: 2, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 137.316 sec <<< FAILURE! - in edu.coursera.parallel.MatrixMultiplyTest
5 | testPar512_x_512(edu.coursera.parallel.MatrixMultiplyTest) Time elapsed: 23.347 sec <<< FAILURE!
6 | junit.framework.AssertionFailedError: It was expected that the parallel implementation would run at least 2.400000x faster, but it only achieved 1.790000x speedup
7 | at junit.framework.Assert.fail(Assert.java:47)
8 | at junit.framework.Assert.assertTrue(Assert.java:20)
9 | at edu.coursera.parallel.MatrixMultiplyTest.testPar512_x_512(MatrixMultiplyTest.java:118)
10 |
11 | testPar768_x_768(edu.coursera.parallel.MatrixMultiplyTest) Time elapsed: 113.921 sec <<< FAILURE!
12 | junit.framework.AssertionFailedError: It was expected that the parallel implementation would run at least 2.400000x faster, but it only achieved 1.594697x speedup
13 | at junit.framework.Assert.fail(Assert.java:47)
14 | at junit.framework.Assert.assertTrue(Assert.java:20)
15 | at edu.coursera.parallel.MatrixMultiplyTest.testPar768_x_768(MatrixMultiplyTest.java:130)
16 |
17 |
--------------------------------------------------------------------------------
/Week-3/miniproject_3/target/test-classes/edu/coursera/parallel/MatrixMultiplyTest.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-3/miniproject_3/target/test-classes/edu/coursera/parallel/MatrixMultiplyTest.class
--------------------------------------------------------------------------------
/Week-4/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/.DS_Store
--------------------------------------------------------------------------------
/Week-4/Quiz/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/.DS_Store
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.03.48 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.03.48 AM.png
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.04.51 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.04.51 AM.png
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.07.20 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.07.20 AM.png
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.19.32 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.19.32 AM.png
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.24.56 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.24.56 AM.png
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.02 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.02 AM.png
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.05 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.05 AM.png
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.33 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.33 AM.png
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.41 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.41 AM.png
--------------------------------------------------------------------------------
/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.50 AM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/Quiz/Screen Shot 2018-01-11 at 5.25.50 AM.png
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__classworlds_classworlds_1_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__com_jcraft_jsch_0_1_27.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__commons_cli_commons_cli_1_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__jtidy_jtidy_4aug2000r7_dev.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__junit_junit_3_8_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_doxia_doxia_sink_api_1_0_alpha_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_artifact_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_artifact_manager_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_core_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_error_diagnostics_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_model_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_monitor_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_plugin_api_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_plugin_descriptor_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_plugin_parameter_documenter_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_plugin_registry_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_profile_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_project_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_repository_metadata_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_maven_settings_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_plugins_maven_resources_plugin_2_4_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_reporting_maven_reporting_api_2_0_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_shared_maven_filtering_1_0_beta_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_wagon_wagon_file_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_wagon_wagon_http_lightweight_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_wagon_wagon_http_shared_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_wagon_wagon_provider_api_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_common_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_apache_maven_wagon_wagon_ssh_external_1_0_beta_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_codehaus_plexus_plexus_container_default_1_0_alpha_9_stable_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_codehaus_plexus_plexus_interactivity_api_1_0_alpha_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_codehaus_plexus_plexus_interpolation_1_13.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_codehaus_plexus_plexus_utils_2_0_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__org_sonatype_plexus_plexus_build_api_0_0_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/libraries/Maven__xml_apis_xml_apis_1_0_b2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/hamcrest-core-1.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/miniproject_4/hamcrest-core-1.3.jar
--------------------------------------------------------------------------------
/Week-4/miniproject_4/junit-4.12.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/miniproject_4/junit-4.12.jar
--------------------------------------------------------------------------------
/Week-4/miniproject_4/miniproject_4.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/pcdp-core-0.0.4-SNAPSHOT.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/miniproject_4/pcdp-core-0.0.4-SNAPSHOT.jar
--------------------------------------------------------------------------------
/Week-4/miniproject_4/pom.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 | 4.0.0
5 | edu.coursera.parallel
6 | miniproject_4
7 | jar
8 | 0.0
9 | miniproject_4
10 |
11 |
12 | UTF-8
13 |
14 |
15 |
16 |
17 | org.apache.maven.plugins
18 | maven-resources-plugin
19 | 2.4.3
20 |
21 |
22 | junit
23 | junit
24 | 3.8.2
25 | test
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 | org.apache.maven.plugins
35 | maven-compiler-plugin
36 | 3.1
37 |
38 | 1.8
39 | 1.8
40 |
41 |
42 |
43 |
44 | org.apache.maven.plugins
45 | maven-dependency-plugin
46 | 2.9
47 |
48 |
49 |
50 | properties
51 |
52 |
53 |
54 |
55 |
56 |
57 | org.apache.maven.plugins
58 | maven-surefire-plugin
59 | 2.17
60 |
61 | pertest
62 | -Xmx4g
63 | true
64 | true
65 |
66 |
67 |
68 | org.apache.maven.plugins
69 | maven-checkstyle-plugin
70 | 2.17
71 |
72 |
73 | checkstyle
74 | validate
75 |
76 | ${basedir}/src/main/resources/checkstyle.xml
77 | UTF-8
78 | true
79 | true
80 | true
81 |
82 |
83 | check
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/src/main/java/edu/coursera/parallel/package-info.java:
--------------------------------------------------------------------------------
1 | /**
2 | * Source code from the Java Parallel Programming Coursera course.
3 | */
4 | package edu.coursera.parallel;
5 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/src/test/java/edu/coursera/parallel/OneDimAveragingPhaserTest.java:
--------------------------------------------------------------------------------
1 | package edu.coursera.parallel;
2 |
3 | import java.util.Random;
4 | import java.util.concurrent.Phaser;
5 |
6 | import junit.framework.TestCase;
7 |
8 | public class OneDimAveragingPhaserTest extends TestCase {
9 | // Number of times to repeat each test, for consistent timing results.
10 | final static private int niterations = 12000;
11 |
12 | private static int getNCores() {
13 | String ncoresStr = System.getenv("COURSERA_GRADER_NCORES");
14 | if (ncoresStr == null) {
15 | return Runtime.getRuntime().availableProcessors();
16 | } else {
17 | return Integer.parseInt(ncoresStr);
18 | }
19 | }
20 |
21 | private double[] createArray(final int N) {
22 | final double[] input = new double[N + 2];
23 | input[N + 1] = 1.0;
24 | return input;
25 | }
26 |
27 | /**
28 | * A reference implementation of runSequential, in case the one in the main source file is accidentally modified.
29 | */
30 | public void runSequential(final int iterations, double[] myNew, double[] myVal, final int n) {
31 | for (int iter = 0; iter < iterations; iter++) {
32 | for (int j = 1; j <= n; j++) {
33 | myNew[j] = (myVal[j - 1] + myVal[j + 1]) / 2.0;
34 | }
35 | double[] tmp = myNew;
36 | myNew = myVal;
37 | myVal = tmp;
38 | }
39 | }
40 |
41 | private static void runParallelBarrier(final int iterations, final double[] myNew, final double[] myVal,
42 | final int n, final int tasks) {
43 | Phaser ph = new Phaser(0);
44 | ph.bulkRegister(tasks);
45 |
46 | Thread[] threads = new Thread[tasks];
47 |
48 | for (int ii = 0; ii < tasks; ii++) {
49 | final int i = ii;
50 |
51 | threads[ii] = new Thread(() -> {
52 | double[] threadPrivateMyVal = myVal;
53 | double[] threadPrivateMyNew = myNew;
54 |
55 | for (int iter = 0; iter < iterations; iter++) {
56 | final int left = i * (n / tasks) + 1;
57 | final int right = (i + 1) * (n / tasks);
58 |
59 | for (int j = left; j <= right; j++) {
60 | threadPrivateMyNew[j] = (threadPrivateMyVal[j - 1] + threadPrivateMyVal[j + 1]) / 2.0;
61 | }
62 | ph.arriveAndAwaitAdvance();
63 |
64 | double[] temp = threadPrivateMyNew;
65 | threadPrivateMyNew = threadPrivateMyVal;
66 | threadPrivateMyVal = temp;
67 | }
68 | });
69 | threads[ii].start();
70 | }
71 |
72 | for (int ii = 0; ii < tasks; ii++) {
73 | try {
74 | threads[ii].join();
75 | } catch (InterruptedException e) {
76 | e.printStackTrace();
77 | }
78 | }
79 | }
80 |
81 |
82 | private void checkResult(final double[] ref, final double[] output) {
83 | for (int i = 0; i < ref.length; i++) {
84 | String msg = "Mismatch on output at element " + i;
85 | assertEquals(msg, ref[i], output[i]);
86 | }
87 | }
88 |
89 | /**
90 | * A helper function for tests of the two-task parallel implementation.
91 | *
92 | * @param N The size of the array to test
93 | * @return The speedup achieved, not all tests use this information
94 | */
95 | private double parTestHelper(final int N, final int ntasks) {
96 | // Create a random input
97 | double[] myNew = createArray(N);
98 | double[] myVal = createArray(N);
99 | final double[] myNewRef = createArray(N);
100 | final double[] myValRef = createArray(N);
101 |
102 | final long barrierStartTime = System.currentTimeMillis();
103 | runParallelBarrier(niterations, myNew, myVal, N, ntasks);
104 | final long barrierEndTime = System.currentTimeMillis();
105 |
106 | final long fuzzyStartTime = System.currentTimeMillis();
107 | OneDimAveragingPhaser.runParallelFuzzyBarrier(niterations, myNewRef, myValRef, N, ntasks);
108 | final long fuzzyEndTime = System.currentTimeMillis();
109 |
110 | if (niterations % 2 == 0) {
111 | checkResult(myNewRef, myNew);
112 | } else {
113 | checkResult(myValRef, myVal);
114 | }
115 |
116 | return (double)(barrierEndTime - barrierStartTime) / (double)(fuzzyEndTime - fuzzyStartTime);
117 | }
118 |
119 | /**
120 | * Test on large input.
121 | */
122 | public void testFuzzyBarrier() {
123 | final double expected = 1.1;
124 | final double speedup = parTestHelper(4 * 1024 * 1024, getNCores() * 16);
125 | final String errMsg = String.format("It was expected that the fuzzy barrier parallel implementation would " +
126 | "run %fx faster than the barrier implementation, but it only achieved %fx speedup", expected, speedup);
127 | assertTrue(errMsg, speedup >= expected);
128 | }
129 | }
130 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/target/classes/edu/coursera/parallel/OneDimAveragingPhaser.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/miniproject_4/target/classes/edu/coursera/parallel/OneDimAveragingPhaser.class
--------------------------------------------------------------------------------
/Week-4/miniproject_4/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst:
--------------------------------------------------------------------------------
1 | edu/coursera/parallel/OneDimAveragingPhaser.class
2 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst:
--------------------------------------------------------------------------------
1 | /Users/rupeshharode/Downloads/miniproject_4/src/main/java/edu/coursera/parallel/OneDimAveragingPhaser.java
2 | /Users/rupeshharode/Downloads/miniproject_4/src/main/java/edu/coursera/parallel/package-info.java
3 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst:
--------------------------------------------------------------------------------
1 | edu/coursera/parallel/OneDimAveragingPhaserTest.class
2 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst:
--------------------------------------------------------------------------------
1 | /Users/rupeshharode/Downloads/miniproject_4/src/test/java/edu/coursera/parallel/OneDimAveragingPhaserTest.java
2 |
--------------------------------------------------------------------------------
/Week-4/miniproject_4/target/test-classes/edu/coursera/parallel/OneDimAveragingPhaserTest.class:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/techytoes/Parallel-Programming-Coursera/65a9bff1c136070af5a678fa7892532be7650d77/Week-4/miniproject_4/target/test-classes/edu/coursera/parallel/OneDimAveragingPhaserTest.class
--------------------------------------------------------------------------------