Find Jobs
Hire Freelancers

Optimization of dot product computation of two vectors using vector instructions

$30-250 USD

En cours
Publié il y a environ 1 an

$30-250 USD

Payé lors de la livraison
The objective of this is to optimize compiler generated code to compute dot product using vector instructions. Tasks to perform: 1. Use CPUID instruction to determine your processor vector processing capabilities. 2. Write C++ function to compute dot product in Visual Studio environment. Place the function in a separate file from main() that calls this function. Vector sizes should be powers of 2 (e.g. 16, 32, 64, .....512, ..216 etc.). Disable Automatic Parallelization, /Qpar, and Automatic Vectorization, /arch. Use QueryPerformanceCounter function to measure execution time. Plot graph: time versus vector size. 3. Compile code in §2. Enable Automatic Parallelization, /Qpar, and Automatic Vectorization, /arch. Use QueryPerformanceCounter function to measure execution time. Plot graph: time versus vector size. Inspect compiler generated assembly code. Observe if compiler vectorized code for very large vector sizes. Try to optimize compiler generated code. Based on compiler generated assembly code (or your optimized code) create an assembly code for dot product computation function (in the same way as shown in the text book for “clear-array example for MIPS”). Please refer to Tutorial in the Appendix. Use QueryPerformanceCounter function to measure execution time. Plot graph time versus vector size. 4. To optimize the code further use vector instruction DPPS in function that computes dot product. instruction to Improve performance of vector assembly code in §2. Use QueryPerformanceCounter function to measure execution time. Plot graph: time versus vector size. 5. Compare all plots in one figure. 6. Perform this in LINUX using gcc.
N° de projet : 36513620

Concernant le projet

8 propositions
Projet à distance
Actif à il y a 1 an

Cherchez-vous à gagner de l'argent ?

Avantages de faire une offre sur Freelancer

Fixez votre budget et vos délais
Soyez payé pour votre travail
Surlignez votre proposition
Il est gratuit de s'inscrire et de faire des offres sur des travaux
Décerné à :
Avatar de l'utilisateur
Dear client, I am a skilled C++ developer and I am interested in your project. I understand that the objective is to optimize compiler generated code to compute dot product using vector instructions. I have experience with vector processing capabilities and can use CPUID instruction to determine the same. I can write a C++ function to compute dot product in Visual Studio environment, measure the execution time using QueryPerformanceCounter function, plot the graph of time versus vector size, and compile the code with /Qpar and /arch flags. I can also optimize the compiler generated code, create an assembly code for dot product computation function, use vector instruction DPPS to further optimize the code, and measure the execution time using QueryPerformanceCounter function. Finally, I can compare all the plots in one figure. Please let me know if you are interested in my proposal.
$230 USD en 7 jours
4,9 (5 commentaires)
3,2
3,2
8 freelances proposent en moyenne $163 USD pour ce travail
Avatar de l'utilisateur
Hello, my name is Hamza and I am a professional programmer with extensive experience in C Programming, C++ Programming and Software Architecture. I understand your project objective to optimize dot product computation using vector instructions on your particular processor. I believe I am the best fit for this project because of my expertise in CPUID instruction and C++ function generation. This knowledge will be invaluable in understanding your processor's vector processing capabilities so that we can write an optimized C++ function that takes advantage of this capability in order to achieve maximum performance. Additionally, I use QueryPerformanceCounter to measure execution time when optimizing code so that I can compare plots across different vector sizes to identify areas where performance could be improved further. I would be more than happy to discuss this project further if given the opportunity. Please feel free to contact me if you have any questions or would like more information about my skills or experience.
$140 USD en 7 jours
4,9 (86 commentaires)
5,5
5,5
Avatar de l'utilisateur
Hello, I am delighted to have come across your project post and express my sincere interest in working with you. As an experienced contractor, I am confident that I possess the skills and expertise required to deliver exceptional results on this project. Over the last decade, I have successfully completed numerous projects similar to yours, and I am confident that I can handle tasks that demand exceptional skills such as; C Programming C# Programming Software Architecture C++ Programming To ensure we can both get a better understanding of the project requirements, budget, and deadlines, I would love to schedule a chat or message to discuss these aspects further. I am available at your convenience and look forward to hearing back from you soon. In the meantime, I kindly request that you keep me in mind for future projects in case this one is no longer available. Finally, as a freelancer, I firmly believe that data is the pollution problem of the information age, and protecting privacy is an environmental challenge. Therefore, I take all necessary precautions to safeguard any confidential information that you may share with me during the project. Thank you for your time and consideration, and I look forward to the opportunity to work with you. Best Regards, Emma A
$100 USD en 4 jours
4,4 (18 commentaires)
5,0
5,0
Avatar de l'utilisateur
hi. I'm ready to start right now. I am a professional mathematician and Programmer. I have rich experiences in using c++/c/c#.... Please send me a message so that we can discuss more. thanks and regards.
$100 USD en 3 jours
5,0 (1 commentaire)
1,5
1,5
Avatar de l'utilisateur
Dear, client! Over the last 5+ years, I have developed several applications and achieved excellent feedback from clients. Core skills and experiences: - Language (C++, C#, WPF, Python, Machine Learning, AI) - Interaction with backend - Rest API, JSON, XML, PHP, NODE.js, C#.net - Databases / Data Management - SQLite, MySQL, MongoDB, MariaDB - Google Maps, Geolocation, GPS, Location Tracking - Version Control Tools - GitHub, Bitbucket, GitLab Why us- - Quality work at affordable prices - Strong frontend and flexible backend architecture and database knowledge - Develop applications that support all devices - Delivering product on/before time - Always up-to-date with the latest technologies Looking forward to your response and building a long-term relationship. ➥ Important Note: We do not take any upfront payment—nothing in Advance.
$250 USD en 7 jours
5,0 (1 commentaire)
1,6
1,6
Avatar de l'utilisateur
Hello there, I can optimize the compiler-generated code for computing the dot product using vector instructions. I will determine the processor's vector processing capabilities using the CPUID instruction and write a C++ function in Visual Studio environment to compute the dot product. I will measure the execution time using the QueryPerformanceCounter function and plot graphs of time versus vector size. Then, I will compile the code with enabled automatic parallelization and automatic vectorization and inspect the generated assembly code to optimize further. I will use the DPPS vector instruction to improve performance and compare all plots in one figure. Finally, I will perform this task in LINUX using gcc. Best regards, Zafar Farooq
$150 USD en 1 jour
0,0 (0 commentaires)
0,0
0,0
Avatar de l'utilisateur
Hello! I am writing to submit a proposal for your project that aims to optimize compiler-generated code to compute dot product using vector instructions. I have extensive experience in C++ programming and I believe I have the skills and expertise required to complete the tasks outlined in the project description. As per the project requirements, I will begin by using the CPUID instruction to determine the processor vector processing capabilities. Then, I will write a C++ function to compute the dot product in Visual Studio environment, ensuring that the vector sizes are powers of 2. I will also disable automatic parallelization and vectorization and use the QueryPerformanceCounter function to measure execution time. Finally, I will plot a graph of time versus vector size to visualize the performance of the code. Please do not hesitate to contact me and discuss about the project I am confident that I possess the necessary skills and expertise required to successfully complete this project. I am dedicated to ensuring that the project is completed on time and to your satisfaction. I am committed to providing regular updates and clear communication throughout the project duration. Thank you for considering my proposal. I look forward to the opportunity to work with you on this project. Sincerely, Sai Dinesh
$100 USD en 2 jours
0,0 (0 commentaires)
0,0
0,0

À propos du client

Drapeau de UNITED STATES
Queens, United States
5,0
5
Méthode de paiement vérifiée
Membre depuis avr. 19, 2022

Vérification du client

Merci ! Nous vous avons envoyé un lien par e-mail afin de réclamer votre crédit gratuit.
Une erreur a eu lieu lors de l'envoi de votre e-mail. Veuillez réessayer.
Utilisateurs enregistrés Total des travaux publiés
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Chargement de l'aperçu
Permission donnée pour la géolocalisation.
Votre session de connexion a expiré et vous avez été déconnecté. Veuillez vous connecter à nouveau.